发现这个插件似乎没有对动态插入的元素做处理,也就是说动态插入的元素是无法正常显示,而是一直显示loading图片,我现在的临时解决方法是,给新插入的节点加一个唯一的容器,然后对这个容器进行初始话,大家有什么办法吗?
var index = 0;
var tpl = $("#template").text();
$('#addItem').on('click', function () {
var html = render(tpl, item);
var $container = $('<p id="newItem' + index++ + '"></p>');
$('body').append($container.html(html));
$container.find("img.lazy").lazyload({
effect: "fadeIn",
load: function (index, elem) {
$(this).parent('.box').css('background', '#fff');
}
});
});
这不是挺好么。。。
lazyload不是监听,自然不能对后插入的元素生效。。。
找到更好的解决方案了,直接将挂钩lazy去掉,就可以了
动态添加,添加完了对新添加的元素加个
.loadlazy()
不行吗?https://jsfiddle.net/06rcojjd/