Я использую Firefox 3.5. Мой тип документа XHTML 1.0 Strict. Допустим, я хочу вставить изображение в div с идентификатором "foo"; тогда я мог бы попробовать:
var foo = $('#foo');
foo.html('<img src="bar.gif" />');
Это действительно добавляет изображение. Но я заметил, что позже в документе это вызывало странное поведение, которое, как я подозревал, может быть связано с нарушением XHTML. Конечно же, используя инструмент веб-разработчика для Firefox, я проверил сгенерированный источник и с ужасом обнаружил, что после запуска скрипта у меня есть:
<div id="foo"><img src="bar.gif"></div>
Куда делась косая черта на теге img !? Осматривая, я обнаружил, что это не специфичная для jQuery проблема: чистый код JavaScript
document.getElementById('foo').innerHTML = '<img src="bar.gif" />';
дает те же результаты. И что же мне делать? Должен отметить, что используя расширенную форму
<img src="bar.gif"></img>
не влияет на результат. Как мне вставить строго допустимый XHTML в мой документ с помощью JavaScript?