if (strHTML == '
')
IE может использовать эти теги в верхнем регистре, делая его '
', что не соответствует.
Несмотря на то, что вы могли решить непосредственную проблему, выполнив «if (strHTML.toLowerCase () == ...», не стоит полагаться на вывод innerHTML браузера, поскольку вы не можете быть уверены, что его сериализация выиграла » делать неожиданные вещи, такие как пропуск конечного тега или добавление лишних пробелов.
Попробуйте, например, посмотреть, есть ли какой-нибудь элемент элемента внутри заполнителя, используя что-то вроде:
if ($('#image-placeholder'+str+' img').length==0) {
...
}