Запустить функцию после загрузки div фонового изображения
Я хочу запустить функцию, основанную на том, когда загружается фоновое изображение div. Что мне не хватает?
Jquery
$(function () {
$('.productnew .imgframe').each(function () {
$(this).load(function () {
$(this).attr("style", $(this).attr("style").replace("background:", ""));
$(this).attr('style', 'background:url(images/new.png), ' + $(this).attr('style'));
});
});
});
HTML
<div class="poster productnew"><div class="imgframe" style="background:url(images/posters/bicycle.jpg);"></div>
1 ответ
Элемент div (ваш <div class="imgframe">
element) не имеет события onload, поэтому вы не получаете событие.
Некоторые из элементов, которые имеют события загрузки <image>
, <body>
, <iframe>
,
Если вам нужно знать, когда это конкретное изображение загружается для запуска другого кода, вы можете загрузить изображение вручную, используя javascript, в объект изображения, а затем, когда сработает событие onload, вы будете знать, что изображение загружено, и вы можете инициировать другие события. (установите его как фоновый URL или что-то еще, что вы хотели сделать).