«заставить» содержимое в div с помощью jQuery .html (или .append) - PullRequest
0 голосов
/ 29 февраля 2012

Я проснулся на сайте, который берет фрагмент других сайтов 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)

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...