Можно ли загрузить весь HTML-документ в фрагмент документа в Internet Explorer?

Вот кое-что, с чем у меня были небольшие трудности. У меня есть локальный сценарий на стороне клиента, который должен позволять пользователю выбирать удаленную веб-страницу и искать на этой странице формы. Чтобы сделать это (без регулярных выражений), мне нужно проанализировать документ в полностью проходимый объект DOM.

Некоторые ограничения, на которые я бы хотел обратить внимание:

Я не хочу использовать библиотеки (например, jQuery). Там слишком много наворотов для того, что мне нужно сделать здесь.Ни при каких обстоятельствах не следует выполнять сценарии с удаленной страницы (по соображениям безопасности).DOM API, такие какgetElementsByTagName, должны быть доступны.Он должен работать только в Internet Explorer, но, по крайней мере, в 7.Давайте представим, что у меня нет доступа к серверу. Я делаю, но я не могу использовать это для этого.Что я пробовал

Предполагая, что у меня есть полная строка документа HTML (включая объявление DOCTYPE) в переменнойhtmlвот что я пробовал до сих пор:

var frag = document.createDocumentFragment(),
div  = frag.appendChild(document.createElement("div"));

div.outerHTML = html;
//-> results in an empty fragment

div.insertAdjacentHTML("afterEnd", html);
//-> HTML is not added to the fragment

div.innerHTML = html;
//-> Error (expected, but I tried it anyway)

var doc = new ActiveXObject("htmlfile");
doc.write(html);
doc.close();
//-> JavaScript executes

Я также пытался извлечь<head> а также<body>узлы из HTML и добавление их в<HTML> элемент внутри фрагмента, до сих пор не повезло.

У кого-нибудь есть какие-либо идеи?

Ответы на вопрос(7)

Ваш ответ на вопрос