nodelist.html revision d2bacf915570731779738821c6d7b01b7d9600fe
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<html>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<head>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<title>FIXME</title>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/yui/yui.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/event-custom/event-custom.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/event-simulate/event-simulate.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/event/event.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/oop/oop.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/base/base.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/attribute/attribute.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/dom/dom-debug.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript" src="/build/node/node-debug.js"></script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<style type="text/css">
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis</style>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis</head>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<body>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<div id="demo">
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis <p>lorem</p>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis <p title="ipsum">ipsum</p>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis <p>dolor</p>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis <p>sit</p>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis</div>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis<script type="text/javascript">
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr JasiukajtisYUI().use('*', function(Y) {
ddc0e0b53c661f6e439e3b7072b3ef353eadb4afRichard Lowe var a = ['foo', 'bar', 'baz:', 'fool'],
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis b = ['foo', 'baz', 'boo', 'bool'];
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis nodelist = Y.all('p');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis //nodelist.set('style.color', 'red');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis node = Y.get('p[title]');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis/*
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis1. set title on all nodes
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis store initial value === prevVal
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis2. provide prevVal array in handler
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis3. fire node titleChange
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis4. fire nodelist titleChange
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis*/
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis node.on('innerHTMLChange', function(e) {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis e.preventDefault();
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis e.newVal = 'hijacked val';
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis this._defAttrChangeFn(e);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtisconsole.log(e);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis console.log('Node: ' + e.type + ': ' + e.target._yuid);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis });
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis //node.set('innerHTML', 'new content from Node');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis node.after('innerHTMLChange', function(e) {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis console.log('Node: afterInnerHTMLChange');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis });
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis nodelist.on('innerHTMLChange', function(e) {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis //console.log('NodeList: ' + e.type + ': ' + e.target);
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis });
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis nodelist.on('click', function(e) {
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis //e.preventDefault();
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis console.log('node click');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis });
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis nodelist.set('innerHTML', 'new content from NodeList');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis Y.get('#demo').addNode('<p>foo</p>');
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis //console.log(nodelist.get('title'));
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis});
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis</script>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis</body>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis</html>
25c28e83beb90e7c80452a7c818c5e6f73a07dc8Piotr Jasiukajtis