Recursion with Chain.js Revision 79c661f7a6ad (Tue Dec 16 2008 at 17:00) - Diff Link to this snippet: https://friendpaste.com/2PWqKBHdPJueLyCl9IVQGt Embed: manni perldoc borland colorful default murphy trac fruity autumn bw emacs pastie friendly Show line numbers Wrap lines 12345678910111213141516171819202122232425262728293031323334353637383940414243444546<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>List With Chain.js</title> <script src="jquery.js" type="text/javascript"></script> <script src="chain.js" type="text/javascript"></script> <script type="text/javascript"> var items = [{ name: 'root', type: 'folder', show: true, items: [ {name: 'folder', type: 'folder', items: [ {name: 'item1', type: 'item'}, {name: 'item2', type: 'item'}, {name: 'item3', type: 'item'}, {name: 'item4', type: 'item'} ]}, {name: 'item1', type: 'item'}, {name: 'item2', type: 'item'} ] }]; $(function(){ $('#tree').items(items).chain(function(root){ var data = this.item(); // Create nested element when items exist if(data.items) { root.chain('clone').appendTo(this).items(data.items).chain(arguments.callee); } }); }); </script> </head> <body> <ul class="tree" id="tree"> <li> <span class="name">item</span> </li> </ul> </body></html>