>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >xul tree http://forum.mozilla-russia.org/viewtopic.php?id=47012 |
bidlocoder > 21-11-2010 21:21:48 |
есть такой xul содержащий дерево Выделить код Код:<?xml version="1.0" encoding="windows-1251"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/x-javascript" src="chrome://poster/content/json.js" /> <script type="application/x-javascript"> <![CDATA[ function getthetree() { return document.getElementById('tree'); } ]]> </script> <tree id="tree" flex="1" > <treecols> <treecol id="title" label="Название" primary="true" flex="1" /> <treecol id="path" label="Путь" flex="1" /> </treecols> <treechildren id="tree-children"> <treeitem> <treerow> <treecell label="PHP" /> <treecell label="programming/php" /> </treerow> </treeitem> </treechildren> </tree> <button label="Добавить элемент" oncommand="addSomething()" /> </window> а вот так cо скрипта добавляю в дерево строки: Выделить код Код:function addItem(title, path) { var item = document.createElement('treeitem'); var row = document.createElement('treerow'); var cell1 = document.createElement('treecell'); var cell2 = document.createElement('treecell'); cell1.setAttribute('label', title); cell2.setAttribute('label', path); row.appendChild(cell1); row.appendChild(cell2); item.appendChild(row); document.getElementById('tree-children').appendChild(item); } var current = 0; var items = [ ['Java', 'programming/java'], ...............................................и тд ]; function addSomething() { addItem(items[current][0], items[current][1]); current = (current + 1) % items.length; //alert(document.getElementById('tree').contentView.rowCount); } а вот как ненужные строки удалять с дерева??... |
Shutnik > 22-11-2010 13:06:07 |
чем removeChild не подходит? |
bidlocoder > 28-11-2010 05:02:40 |
все разобрался, делаю так Выделить код Код:document.getElementsByTagName('tree')[x].getElementsByTagName('treeitem')[x].parentNode.removeChild(elem[0]); спасибо |
bidlocoder > 28-11-2010 05:34:35 |
и еще вопрос по теме, в свойствах дерева есть enableColumnDrag для таскания колонок это хорошо , а вот если надо менять местами строки как быть?, никакого enableRowDrag не нашел, может плохо искал |
Shutnik > 29-11-2010 14:05:11 |
можно посмотреть как это работает в менеджере поисковых систем, например |