Cross Reference: /yui3/src/app/tests/manual/controller.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<!DOCTYPE html>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<html lang="en">
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<head>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove <meta charset="utf-8">
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove <title>Controller Test</title>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove</head>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<body>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<textarea id="log" cols="80" rows="10"></textarea>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<p>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<button id="push">pushState</button>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<a href="http://www.yahoo.com/">Yahoo!</a>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove</p>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<script src="http://platypus-lan:3000/build/yui/yui.js"></script>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove<script>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grovedocument.getElementById('log').value = '';
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grovevar Y = YUI({filter: 'raw',}).use('controller', 'node', function (Y) {
5125fb9611d90216a17ec67d0bd8a7b17b2fb734Ryan Grove var logEl = document.getElementById('log'),
5125fb9611d90216a17ec67d0bd8a7b17b2fb734Ryan Grove controller = new Y.Controller();
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
5125fb9611d90216a17ec67d0bd8a7b17b2fb734Ryan Grove controller.route('/*anything', function (req) {
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove log('route called, path: ' + req.path);
5125fb9611d90216a17ec67d0bd8a7b17b2fb734Ryan Grove });
5125fb9611d90216a17ec67d0bd8a7b17b2fb734Ryan Grove
5125fb9611d90216a17ec67d0bd8a7b17b2fb734Ryan Grove controller.dispatch();
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove function log(message) {
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove logEl.value += message + '\n';
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove }
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove Y.one('#push').on('click', function () {
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove controller.save('/' + Y.Lang.now());
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove });
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove});
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove</script>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove</body>
f2a8495d95fb3a18b61cfdd9d24ddbd878eb6773Ryan Grove</html>