Posso carregar um documento HTML inteiro em um fragmento de documento no Internet Explore
Aqui está algo que eu tenho tido um pouco de dificuldade. Eu tenho um script local do lado do cliente que precisa permitir que um usuário busque uma página da Web remota e pesquise formulários nessa página resultante. Para fazer isso (sem regex), preciso analisar o documento em um objeto DOM totalmente passáve
Algumas limitações que eu gostaria de enfatizar:
Não quero usar bibliotecas (como jQuery). Há muito inchaço para o que eu preciso fazer aqui. Sob nenhuma circunstância os scripts da página remota devem ser executados (por motivos de segurançaPIs @DOM, comogetElementsByTagName
, precisa estar disponível. Ele só precisa trabalhar no Internet Explorer, mas no mínimo no Vamos fingir que não tenho acesso a um servidor. Sim, mas não posso usá-lo para issO que eu tentei Assumindo que eu tenho uma string de documento HTML completa (incluindo a declaração DOCTYPE) na variávelhtml
, aqui está o que eu tentei até agora:
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
Eu também tentei extrair o<head>
e<body>
nós do HTML e adicioná-los a um<HTML>
elemento dentro do fragmento, ainda sem sort
Alguém tem alguma idéia