http://blagtalkan.ru
http://oktpoisk.ru
http://mysorru.ru/
http://san-okt.ru/
http://pes6evolution.ru/
http://chasikigov.ru
http://serafimsovet.ru
http://filmsgov.ru
http://free-domen.ru
http://fithonda.ru/forums/index.php
http://avtogov.ru
http://www.1001bilet.com.ua/base/on-line/
http://pravilavoini.ru
http://school41ufa.ru
http://rusrav4.ru
Методы работы с XML, не зависящие от типа броузера | Книга AJAX
 

В приложениях Ajax и, как правило, в коде JavaScript необхо, учитывать различия между броузерами. При создании решений на зе XML в IE и Firefox у вас есть два выхода: создать свой собствешвбор функций, которые будут нивелировать существующие разли¬чи, ИЛИ взять готовую библиотеку. Библиотеку проще всего взять го-жшую, такую как zXml, о которой мы рассказывали в главе 2. Она не только поддерживает объект XMLHttp, но и реализует обобщенные ин¬терфейсы для работы с документами XML.
Так, чтобы создать XML DOM документа, можно воспользоваться ме¬тодом zXmlDom.createDocument():
. var oXmlDom = zXmlDom.createDocument();
Эта единственная строка может заменить целые блоки кода, учитываю¬щее различия между броузерами. Кроме того, zXml добавляет в стан¬дартный DOM документа броузера Firefox функциональность, реали¬зованную в IE.
Но самое главное, что делает библиотеку zXml столь удобной, - это до-§ввление поддержки свойства readyState и обработчика события оп-"35:ystatechange. Вместо того чтобы в Firefox писать отдельный обра-•отчик события onload, можно писать единый код, который будет рабо¬тать во всех броузерах, например:
cXmlOoro.onreadystatechange = function () { .if (oXmlDom,readyState,== 4) {
// Выполнить какие-либо действия после загрузки документа. .
ь }. ,: ....... .
Библиотека zXml также добавляет поддержку свойств text и xml ко всем ]еыам в Firefox. Теперь нет необходимости использовать объект XMLSe-niiizer или автономную функцию для получения необходимых зна-i, это можно сделать посредством элементов XML точно так же, : и в IE:
var oRoot = oXmlDoiri.documentElement; r var sFirstChildText = oRoot.firstChild.text; ^ var sXml = oRoot.xml;
Кроме того, библиотека zXml обеспечивает поддержку метода load-■LC) в броузере Firefox, благодаря чему отпадает необходимость в ис-■пшьзовании объекта DOMParser:
i var oXmlDom2 = zXmlOom.createDocumentO; г QXalDom2.1oadXML(sXml);
наконец, библиотека добавляет объект parseError в реализацию Fire-Этот объект довольно точно эмулирует поведение соответствующе-I ему объекта в IE. Вот самое большое отличие: свойство errorCode, которое в случае ошибки просто записывается ненулевое значение.

if (oXmlDom.parseError.errorCode != 0) { JC;'^yarstr = "Возникла ошибка! !!\n" +
"Описание: " + oXmlDom.parseError.reason + "\n" + "Файл: " + oXmlDom.parseError.url + "\n" + i "Строка: " + oXmlDom.parseError.line + "\n" + "Позиция в строке: " + oXmlDom.parseError,linePos + "\n" + "Исходный код: " + oXmlDom.parseError.srcText; alert(str); } else {
// Код, который работает в случае, если загрузка прошла успешно.
}
Разумеется, никто не может обязать вас пользоваться библио zXml при разработке своих решений, но она, несомненно, может заться для вас чрезвычайно полезной. В следующем разделе пред лен пример, разработанный на основе библиотеки zXml.