Я проснулся на сайте, который берет фрагмент других сайтов HTML и отображает их в качестве «предварительного просмотра» к тому, что включает в себя файл. Сценарий php создает фрагменты и сокращает содержимое целевого html-файла в заданной точке после символов «n». Это происходит, даже если знак «n» находится в середине разметки. Однако это исправлено скриптом, который закрывает открытую разметку. Однако это иногда приводит к неправильной разметке, например:
<a ></a>
В любом случае, текст фрагмента (с ошибочной разметкой) помещается в элемент div, используя:
var snippet = "<a ></a>"
$('#targetdiv').html(snippet);
Это не проблема в любом другом браузере, но (удивление, удивление) Internet Explorer 8 (возможно, те же проблемы в других версиях, но только в эмуляторе 8 и 7). После поиска этой проблемы я обнаружил, что некоторые считают, что IE не может .html
из-за неправильной разметки. Есть ли способ обойти это, так сказать, «заставить» ошибочную разметку в div? Я попробовал .append
, но там те же результаты (что вообще ничего). В противном случае скрипт верен, так как использование .text
вместо .html
или .append
выведет переменную как обычный текст в div даже (!!) в IE.
Итак, в двух словах: есть ли способ обойти невозможность IE обрабатывать ошибочную разметку в сочетании с .html
? (Я знаю, что это не лучший способ решения этой проблемы, но на самом деле я просто ищу быстрое и грязное решение этой проблемы, чтобы я мог тратить свое время на другие функции, а не готовиться к постоянным проблемам IE)
Спасибо.