【问题标题】:Reloading masonry content重新加载砌体内容
【发布时间】:2015-12-16 19:01:46
【问题描述】:

当元素的高度发生变化时,我正在尝试更新砌体页面的布局。如果您调整窗口大小,我希望元素自动重新调整。我尝试了很多方法,现在似乎什么也没做:

function masonryReload() {
                jQuery('#container').masonry('reloadItems');
            }

我在这里遗漏了什么还是有另一种更适合我想要的方法?

如果有人对此有任何经验,将不胜感激。


更新: JS函数:

function masonryReload() {
            jQuery('#container').masonry('reload');
        }

HTML:

 <li id="logo" style="padding-right: 25px;" onclick="masonryReload();"><img src="<?php bloginfo('template_directory'); ?>/img/logo.png"></li>

【问题讨论】:

    标签: jquery masonry


    【解决方案1】:

    .masonry('reload')

    它在文档中定义,但只需再次使用 .masonry() 就可以了。


    遵循您的代码。远离内联 onclick 处理程序,将其全部放在 JS 中:

    HTML

    <li id="logo" style="padding-right: 25px"><img src="<?php bloginfo('template_directory'); ?>/img/logo.png"></li>
    

    JS

    function masonryInit() {
        jQuery("#container").masonry();
        console.log("It works!");
    }
    
    jQuery(document).ready(function() {
        masonryInit();
        $("#logo").click(masonryInit());
    });
    

    【讨论】:

    • 我确实刚刚发现,试一试,它不起作用。不过似乎是正确的方法
    • @dwinnbrown 在这种情况下,发布您使用的 HTML 和调用该函数的 JS。
    • 也给了.masonry('layout') 一个机会,但什么也没有
    • @dwinnbrown 查看我之前的评论。
    • @dwinnbrown 请再试一次,如果不起作用,请查看控制台。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多