parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 11.08.2007 11:24

похоже, что всё таки об одном (я не спец в JS, возможно поэтому о TreeWalker и Nod слышу впервые). вот кусок кода (старый, ещё not async), загружающего xml:
	var oXML;
	try {
		// if MSIE
		oXML = new ActiveXObject('Microsoft.XMLDOM')
		oXML.async = false
		oXML.load(url)
		return oXML
	}
	catch ( error ) {
		try {
			// if Mozzila
			oXML = new XMLHttpRequest()
			oXML.open("GET", url, false)
			oXML.setRequestHeader('If-Modified-Since', 'Thu, 22 Nov 2001 00:00:01 GMT')
			oXML.send(null)
			return oXML.responseXML
		}
...
картина аналогичная, только мы загружаем уже дерево, без дополнительных связей через <parent_id/>, соотв. полученное дерево обходится с помощью firstChild/nextSibling, строится подветка, а потом она appendChild к li-шке. а вам, с <parent_id/> можно вообще достать все полученные элементы через getElementsByTagName.

P.S. у меня "в железе" пункт 1 немного отличается. при первом запросе получаются не только корневые элементы, но и все маленькие ветки (если в какой-то ветке есть до 10 хточную цифру не помнюъ элементов, то она сразу подкрузится вся). или вообще первый ajax запрос можно не делать, а сразу выдать нужное в html.