Логин:

Пароль:

Форумы
Общие вопросы
Document Object Model
Обсуждаем конференцию
Web Usability (test)

Document Object Model

Чем заменить importNode в MSIE?

Жаль, не встречал подобную проблему... Первое, что приходит в голову - написать функцию, которая будет бегать по дереву и дублировать его уже в нужном документе. Например:

function importElement(srcElem) {
.if (srcElem.nodeType == 1) {
..// если спрашивают элемент, то создаем новый
..var resultElem = document.createElement(srcElem.nodeName);
..// добавляем атрибуты
..for (var i = 0; i < srcElem.attributes.length; i++)
...resultElem.setAttribute(srcElem.attributes.item(i).nodeName, srcElem.attributes.item(i).nodeValue)
..// добавляем детей
..for (var i = 0; i < srcElem.childNodes.length; i++)
...resultElem.appendChild(importElement(srcElem.childNodes.item(i)))
.} else if (srcElem.nodeType == 3) {
..// а если текстовую ноду...
..var resultElem = document.createTextNode(srcElem.nodeValue);
.}
.// возвращаем то, что получилось
.return resultElem;
}


Надеюсь, кто-нибудь предложит более изъящное решение.
СообщениеАвторДата
Pipa01.04.2003 02:02
Leechy01.04.2003 17:41
Maniac03.04.2003 11:32