Причина , почему это происходит, заключается в том, что как только вы создаете изображение со свойством src
, оно загружается. Например:
var image = document.createElement('img');
image.src = 'example.png';
Изображение немедленно загружается браузером, прежде чем оно будет добавлено в DOM. На самом деле это вообще-то оптимизация. Например, его можно использовать для предварительной загрузки изображений, которые будут использоваться позже.
Поскольку jQuery встраивает строку HTML в структуру DOM, он создает элементы img
почти так же, как и в приведенном выше фрагменте. Когда элемент изображения появляется, даже до его добавления в DOM, файл загружается с сервера.
Самое простое решение - удалить все теги img
из HTML, прежде чем добавить его:
html = html.replace(/<img\b[^>]*>/ig, '');
Если это не вариант и вам нужны элементы img
, вы можете переименовать атрибуты src
во что-то другое или удалить атрибуты, если они вам не нужны.