У меня есть html-строка, которую я хотел бы выгрузить непосредственно в элемент.Эта HTML-строка содержит некоторые теги, и мне нужно добавить путь к их атрибутам 'src'.
В настоящее время я делаю что-то вроде этого:
// note, htmlString is coming in from an external xml file...
var htmlString = "<img src='img1.jpg'/><br/><img src='img2.jpg'/>";
var imgContainer = $('<div />');
imgContainer.append(htmlString);
var prefix = "some/path/to/img/";
imgContainer.find('img').each(function(i, el) {
$(el).attr('src', prefix + $(el).attr('src'));
});
Это работает, ноЯ вижу сбой загрузки ресурсов по непредставленному пути.Похоже, что браузер пытается загрузить изображения сразу после создания элемента imgContainer, даже если он не добавлен в документ.Я бы хотел избежать этих неудачных загрузок.
Полагаю, я мог бы проанализировать htmlString перед добавлением, но было бы просто просто $ .each () пройти через элемент после его создания ...
ПРИМЕЧАНИЕ: Задав этот вопрос, я узнал, что создание элемента jQuery с помощью $(htmlString)
немедленно вызывает попытки загрузки всех ресурсов в htmlString
.Поэтому мне нужно каким-то образом манипулировать htmlString
перед упаковкой его в объект jQuery.