Полезная информация

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.

№128-09-2006 17:31:29

texnet
Участник
 
Группа: Members
Зарегистрирован: 28-09-2006
Сообщений: 3

transformNode для Firefox

Проблема банальная и на разных форумах частая, но ничего вразумительного обнаружено не было.
У меня есть код, который работает только в IE.

if (window.ActiveXObject) {
source = new ActiveXObject("Microsoft.XMLDOM");
source.async = false;
style = new ActiveXObject("Microsoft.XMLDOM");
style.async = false;
}
source.load("ex05-1.xml");
style.load("ex05-1a.xsl");
document.getElementById("xslresult").innerHTML = source.transformNode(style);

Надо бы чтоб и в FF он нормально отрабатывал.
Если кто знает - плз, подскажите. Желательно конкретным примером (возможно кто что аналогичное делал...)

нашла - http://www.developer.com/xml/article.php/3630526, но это не особо меня продвинуло, вероятно что-то не то делаю..

Отсутствует

 

№228-09-2006 18:14:44

Yan
Участник
 
Группа: Extensions
Откуда: Москва
Зарегистрирован: 27-02-2005
Сообщений: 1019

Re: transformNode для Firefox

Отсутствует

 

№328-09-2006 18:15:07

Dionys
Участник
 
Группа: Members
Зарегистрирован: 20-09-2006
Сообщений: 19

Re: transformNode для Firefox

Выделить код

Код:

var xml = document.implementation.createDocument('', 'myxml', null);
xml.async = false;
xml.load('file.xml');

Отсутствует

 

№428-09-2006 18:30:42

texnet
Участник
 
Группа: Members
Зарегистрирован: 28-09-2006
Сообщений: 3

Re: transformNode для Firefox

Dionys пишет
Выделить код

Код:

var xml = document.implementation.createDocument('', 'myxml', null);
xml.async = false;
xml.load('file.xml');

эх.... смотри, что получается:

if (window.ActiveXObject) {
source = new ActiveXObject("Microsoft.XMLDOM");
source.async = false;
style = new ActiveXObject("Microsoft.XMLDOM");
style.async = false;
source.load("ex05-1.xml");
style.load("ex05-1a.xsl");
}
else if (document.implementation && document.implementation.createDocument) {
source= document.implementation.createDocument("","myxml",null);
source.async = false;
style= document.implementation.createDocument("","",null);
style.async = false;
source.load('ex05-1.xml');
style.load('ex05-1a.xsl');
}
document.getElementById("xslresult").innerHTML = source.transformNode(style);
return true;

на данный код вылазит ошибка - "source.transformNode is not function".
transformNode() - это вроде метод IE. А как это решить в Firefox????????????????

Добавлено Чтв 28 Сен 2006 18:59:59 :

Yan пишет

Это как раз то, что надо.
Попыталась воспроизвети пример - увы...
Создала html-файл, куда в качестве javascript скопировала "Figure 6 : Example", при загрузке файла вызываем Init().
Еще прописала - <div id="example"></div> (на же куда-то результат работы выгружать....)
и не работает... document.getElementById("example") has no properties

не понятно....

Отсутствует

 

№528-09-2006 19:23:15

Yan
Участник
 
Группа: Extensions
Откуда: Москва
Зарегистрирован: 27-02-2005
Сообщений: 1019

Re: transformNode для Firefox

texnet
Если "document.getElementById("example") has no properties", то вероятно ошибка где-то в HTML, или с неправильным вызовом Init.

Правда, в примере в xsl-фале ошибка закралась - неправильно закрытый тег. Я подправил, у меня всё заработало:
http://xsms.nm.ru/temp/gecko/xslt_and_js/

Отсутствует

 

№628-09-2006 19:41:57

texnet
Участник
 
Группа: Members
Зарегистрирован: 28-09-2006
Сообщений: 3

Re: transformNode для Firefox

Yan пишет

texnet
Если "document.getElementById("example") has no properties", то вероятно ошибка где-то в HTML, или с неправильным вызовом Init.

Правда, в примере в xsl-фале ошибка закралась - неправильно закрытый тег. Я подправил, у меня всё заработало:
http://xsms.nm.ru/temp/gecko/xslt_and_js/

:) Бесконечно благодарна. Спасибо.

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]