Вот кое-что, с чем у меня возникли небольшие затруднения. У меня есть локальный клиентский скрипт, который должен позволить пользователю получать удаленную веб-страницу и искать на этой странице формы. Чтобы сделать это (без регулярного выражения), мне нужно проанализировать документ в полностью проходимый объект DOM.
Некоторые ограничения, которые я хотел бы подчеркнуть:
getElementsByTagName
. Предполагая, что у меня есть полная строка документа 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
Я также попытался извлечь узлы
и
из HTML и добавить их в элемент
внутри фрагмента, но безуспешно.
Есть ли у кого-нибудь идеи?