javascript - 關於jquery.lazyload使用時遇到的問題,求救!
ringa_lee
ringa_lee 2017-05-19 10:45:21
0
3
613

發現這個外掛似乎沒有對動態插入的元素做處理,也就是說動態插入的元素是無法正常顯示,而是一直顯示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/

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板