Como posso forçar um documento XHTML malformado a ser carregado como HTML?

3

Estou tentando abrir o link no Firefox, mas falha com um erro de análise XML. O Chromium tem um problema semelhante, mas mostra pelo menos o documento até o erro.

Ambos os resultados são indesejados, só quero que a página seja analisada como HTML. Quais opções eu tenho além de usar um navegador diferente?

    
por Lekensteyn 25.09.2012 / 10:49

2 respostas

4

Para documentos estáticos, o seguinte bookmarklet funcionará como pretendido: O documento XHTML será exibido como HTML (não tão estrito).

javascript:(function(){
 var x = new XMLHttpRequest();
 x.open('GET', location.href);
 x.onload = function() {
   var d = document.implementation.createHTMLDocument('');
   d.documentElement.innerHTML = x.responseText.replace(/^[\S\s]*?<html\b/i, '<html');
   document.replaceChild(d.documentElement, document.documentElement);
 };
 x.send();
})();

Estou removendo os primeiros caracteres para a tag <html> . Caso contrário, tudo acaba na tag <body> . Consequentemente, os estilos (e scripts) não seriam aplicados muito bem.

    
por 25.09.2012 / 11:07
1

Se for apenas uma vez em quando, você pode dedicar um pouco de esforço manual. Quando vir o erro de análise XML, você pode voltar, clicar com o botão direito do mouse no link e escolher "Salvar link como". Em seguida, edite sua cópia do HTML para corrigir o erro. Abra sua cópia corrigida no seu navegador.

Ao eliminar a opção "< / table >" tag que foi anotada no erro de análise, consegui ver a página que você indicou.

    
por 25.09.2012 / 11:03