已经给img添加了width和height属性,为什么masonry瀑布流插件还是不能正常工作,都堆一块了

发布于 2022-09-05 23:25:53 字数 1010 浏览 33 评论 0

已经给img添加了width和height属性,为什么masonry瀑布流插件还是不能正常工作,都堆一块了
第一次是后端渲染的,没啥问题,点击翻页后是异步渲染的,这种动态添加的元素渲染就不正常了
代码如下:

success : function(data){
    var result = data.data;
    if(result.length > 0){
        var html = "";
        for(var i = 0; i < result.length; i++){
            html += '<figure class="gridItem">' +
                        '<div class="gridItemInner">' +
                            '<div class="thumbnailGridItem">' +
                                '<img src="' + result[i].thumb + '" width="' + result[i].width + '" height="' + result[i].height + '" />' +
                            '</div>' +
                        '</div>' +
                    '</figure>';
        }
        $("#grid").html(html);
        var $grid = $('#grid').imagesLoaded( function() {
            $grid.masonry({
                itemSelector: ".gridItem"
            });
        });
        $grid.masonry('reloadItems')
        
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

许你一世情深 2022-09-12 23:25:53

建议先看看控制台有没有报错。另外imagesLoaded是异步执行的,$grid.masonry('reloadItems')会在它之前执行。masonry官网提供了动态加载图片的示例,可以参考一下:https://codepen.io/desandro/p...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文