javascript - 关于jquery.lazyload使用中遇到的问题,求助!
ringa_lee
ringa_lee 2017-05-19 10:45:21
0
3
648

发现这个插件似乎没有对动态插入的元素做处理,也就是说动态插入的元素是无法正常显示,而是一直显示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');
                    }
                });

            });
ringa_lee
ringa_lee

ringa_lee

全部回复(3)
黄舟

这不是挺好么。。。

lazyload不是监听,自然不能对后插入的元素生效。。。

仅有的幸福

找到更好的解决方案了,直接将挂钩lazy去掉,就可以了

            $("img.lazy").lazyload({
                effect: "fadeIn",
                load: function (index, elem) {
                    $(this).parent('.box').css('background', '#fff').find('img').removeClass('lazy');
                }
            });
巴扎黑

动态添加,添加完了对新添加的元素加个 .loadlazy() 不行吗?

https://jsfiddle.net/06rcojjd/

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板