Как я могу заставить загруженный XHTML-документ загружаться как HTML?

588
Lekensteyn

Я пытаюсь открыть http://www.x.org/releases/current/doc/man/man3/xcb_grab_keyboard.3.xhtml в Firefox, но это не удается из-за ошибки синтаксического анализа XML. У Chromium есть похожая проблема, но он показывает, по крайней мере, документ до ошибки.

Оба результата нежелательны, я просто хочу проанализировать страницу как HTML. Какие варианты у меня есть, кроме использования другого браузера?

3
`сохранить ссылку как ...` затем изменить расширение на html (или выяснить, почему оно неисправно и сообщить об этом веб-мастеру) (IE7 принудительно загружает, так что я думаю, что этот тип контента не устанавливается) ratchet freak 12 лет назад 0

2 ответа на вопрос

4
Rob W

Для статических документов следующий букмарклет будет работать так, как задумано: Документ XHTML будет отображаться в виде (не очень строгого) HTML.

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(); })(); 

Я убираю первые символы до <html>тега. В противном случае все заканчивается в <body>теге. Следовательно, стили (и сценарии) не будут применяться достаточно хорошо.

Я попробовал что-то похожее, используя document.write (некрасиво) или innerHTML / replaceChild или DOMParser, но ни один из них не сработал. Это прекрасно работает, спасибо! Lekensteyn 12 лет назад 0
1
minopret

Если это только время от времени, вы можете посвятить немного ручного труда. Когда вы видите ошибку синтаксического анализа XML, вы можете вернуться назад, щелкнуть правой кнопкой мыши по ссылке и выбрать «Сохранить ссылку как». Затем отредактируйте свою копию HTML, чтобы исправить ошибку. Откройте исправленную копию в браузере.

Удалив тег </ table>, который был отмечен в ошибке синтаксического анализа, я смог просмотреть указанную вами страницу.

Это нарушит гиперссылки и также будет неудобно, поскольку на этом сайте несколько страниц не работают. Разве нет специального URL-адреса настроек для анализа XHTML как HTML? Кроме того, я на самом деле не заинтересован в исправлении разметки и хочу, чтобы браузеры могли анализировать искаженный HTML без жалоб. Хорошо, если есть некоторые ошибки отображения, пока я могу читать страницу. Lekensteyn 12 лет назад 0
ОК, спасибо за ваше разъяснение. minopret 12 лет назад 0

Похожие вопросы