nodelist.html revision a6dd1c401b840b62cff0bcd04969e7c6a0022a6b
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
a09e70c94769dcb03c47b89667b591950a29bcb7Automatic Updater<html>
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews<head>
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence<title>FIXME</title>
ec5347e2c775f027573ce5648b910361aa926c01Automatic Updater
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence<script type="text/javascript" src="/build/yui/yui.js"></script>
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence<script type="text/javascript" src="/build/event-custom/event-custom.js"></script>
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence<script type="text/javascript" src="/build/event-simulate/event-simulate.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<script type="text/javascript" src="/build/event/event.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<script type="text/javascript" src="/build/oop/oop.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<script type="text/javascript" src="/build/base/base.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<script type="text/javascript" src="/build/attribute/attribute.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<script type="text/javascript" src="/build/dom/dom-debug.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<script type="text/javascript" src="/build/node/node-debug.js"></script>
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence<style type="text/css">
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
a09e70c94769dcb03c47b89667b591950a29bcb7Automatic Updater</style>
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein</head>
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein<body>
cb4a97bb1c84fcab089136f0a4686ab5fea6a07cDavid Lawrence<div id="demo" class="foo">
cb4a97bb1c84fcab089136f0a4686ab5fea6a07cDavid Lawrence <p id="lorem">lorem</p>
cb4a97bb1c84fcab089136f0a4686ab5fea6a07cDavid Lawrence <p title="ipsum">ipsum</p>
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence <p>dolor</p>
28d8b4118da7abed531ca09136a6d1402837d721Mark Andrews <p>sit</p>
28d8b4118da7abed531ca09136a6d1402837d721Mark Andrews</div>
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence<script type="text/javascript">
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid LawrenceYUI().use('*', function(Y) {
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein var a = ['foo', 'bar', 'baz:', 'fool'],
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence b = ['foo', 'baz', 'boo', 'bool'];
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence nodelist = Y.all('p');
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence console.log(nodelist.addClass('foo').addClass('bar'));
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence/*
2c25ca45a429e3afad8e6a9b77fdb7c00f8c2f40Mark Andrews1. set title on all nodes
28d8b4118da7abed531ca09136a6d1402837d721Mark Andrews store initial value === prevVal
28d8b4118da7abed531ca09136a6d1402837d721Mark Andrews2. provide prevVal array in handler
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence3. fire node titleChange
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence4. fire nodelist titleChange
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence*/
1ab0c9558f167cac2fc6a486547334d56930b81eDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence/*
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence node.on('innerHTMLChange', function(e) {
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence e.preventDefault();
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence e.newVal = 'hijacked val';
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence this._defAttrChangeFn(e);
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence console.log('Node: ' + e.type + ': ' + e.target._yuid);
1ab0c9558f167cac2fc6a486547334d56930b81eDavid Lawrence });
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence //node.set('innerHTML', 'new content from Node');
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence //node.setStyle('color', 'red');
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence nodelist.setStyle('color', 'red');
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence console.log(Y.all('body').get('firstChild.nodeName'));
a09e70c94769dcb03c47b89667b591950a29bcb7Automatic Updater console.log(Y.get('body').get('firstChild.nodeName'));
fcf28b759c65388e8875f2dbcf8eb5fa786b29ecAndreas Gustafsson
fcf28b759c65388e8875f2dbcf8eb5fa786b29ecAndreas Gustafsson Y.get('body').on('firstChildChange', function(e) {
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(e);
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson e.preventDefault();
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson });
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(Y.get('body').set('firstChild.nextSibling.innerHTML', 'foo'));
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson node.after('innerHTMLChange', function(e) {
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log('Node: afterInnerHTMLChange');
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson });
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson nodelist.on('innerHTMLChange', function(e) {
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson //console.log('NodeList: ' + e.type + ': ' + e.target);
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson });
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson var onClick = function(e) {
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson //e.preventDefault();
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log('node click');
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson };
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson nodelist.on('click', onClick);
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson Y.get('#demo').addNode('<p>injected content</p>');
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson nodelist.on('refresh', function(e) {
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson e.added.on('click', onClick);
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson });
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson nodelist.refresh();
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson nodelist.set('innerHTML', 'new content from NodeList');
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(Y.get('#demo').get('children').set('innerHTML', 'foo'));
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(Y.get('#demo').hasClass('foo'));
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(Y.get('#demo').addClass('bar'));
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(Y.get('#demo').hasClass('bar'));
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson console.log(nodelist.item(0).get('id'));
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson nodelist.each(function(n) {
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson n.set('innerHTML', 'set by nodelist.each()');
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson });
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson */
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson});
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson</script>
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson</body>
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson</html>
19872fdfb75357354a83b74932f661d4b0b6e4ddAndreas Gustafsson