У меня есть набор изображений, которые находятся в скрытом отделении. Отделение показывают, когда пользователь нажимает на некоторые ссылки.
Я хотел бы к jQuery lazyload скрыть эти изображения, пока на ссылку не нажимают, и скрытое отделение подвергается. Но, если я использую lazyload согласно документации, изображения всегда загружаются, как скрытое отделение находится в области просмотра, по-видимому.
какие-либо идеи?
Тимо, я думаю, он не хочет в любом случае загружать изображения в дом, прежде чем они ему понадобятся. Почему-то это классический сценарий использования ajax для загрузки контента.
Я предлагаю вам поступить следующим образом.
$.fn.image = function(src, f) {
return this.each(function() {
var i = new Image();
i.src = src;
i.onload = f;
this.appendChild(i);
});
}
$(function() {
$('yourlink').click(function() {
$("#container").image("image.jpg", function() {
alert("image loaded");
});
});
});
Вам действительно нужен плагин отложенной загрузки? Как насчет замены содержимого div изображениями при нажатии на ссылку?
Что-то вроде:
<a href="link" onclick="show_images('div_id');">asdf</a>
и
function show_images(id) {
$('#' + id).append('<img src="image1.jpg" /><img src="imagex.jpg" />');
}