JQuery 砌体!在窗口调整大小时更新列宽度

发布于 2024-12-20 16:28:59 字数 729 浏览 3 评论 0原文

我正在研究响应式布局,我也使用 JQuery Masonry。

我正在使用以下脚本来获取当前列宽。

var curWidth; 
var detector;

detector = $('.magic-column');
curWidth = detector.outerWidth(true);

$(window).resize(function(){
    if(detector.outerWidth(true)!=curWidth){
        curWidth = detector.outerWidth(true);
    }
});

我的 JQuery Masonry 初始化脚本是这样的。

$(window).load(function(){
     $(function (){
            $wall.masonry({
                    singleMode: true, 
                    columnWidth: curWidth, // This needs to be update on window load & resize both //
            });
     });
});

我的第一个脚本正确获取宽度,但在砌体中,宽度没有更新... 我怎样才能同时实现负载和负载?调整大小函数,以便我的 curWidth 也将在窗口调整大小时更新为 Masonry

I'm working working on Responsive Layout where I'm using JQuery Masonry as well.

I'm using following script to get current column width.

var curWidth; 
var detector;

detector = $('.magic-column');
curWidth = detector.outerWidth(true);

$(window).resize(function(){
    if(detector.outerWidth(true)!=curWidth){
        curWidth = detector.outerWidth(true);
    }
});

My JQuery Masonry init script is something like this..

$(window).load(function(){
     $(function (){
            $wall.masonry({
                    singleMode: true, 
                    columnWidth: curWidth, // This needs to be update on window load & resize both //
            });
     });
});

My 1st script is fetching width correctly, but in masonry that width isn't updating...
How can I implement both load & resize function so that my curWidth will be updated for Masonry as well on window resize

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

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

发布评论

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

评论(2

我纯我任性 2024-12-27 16:28:59

您需要在调整大小后设置砌体的列宽度:

$(window).resize(function(){
    if(detector.outerWidth(true)!=curWidth){
        curWidth = detector.outerWidth(true);
        $wall.masonry( 'option', { columnWidth: curWidth });
    }
});

您可以在此处阅读有关砌体方法的更多信息:http: //masonry.desandro.com/methods.html

You need to set the columnWidth of the masonry after resize:

$(window).resize(function(){
    if(detector.outerWidth(true)!=curWidth){
        curWidth = detector.outerWidth(true);
        $wall.masonry( 'option', { columnWidth: curWidth });
    }
});

Yuo can read more about the masonry methods here: http://masonry.desandro.com/methods.html

花伊自在美 2024-12-27 16:28:59

使用流体布局时,bindResize 可用于调整容器中所有项目的大小(bindResize 位于 https://github.com/desandro/masonry/blob/master/dist/masonry. pkgd.js

$container.masonry({
    itemSelector: '.container'
});

$(window).resize(function () {
    $container.masonry('bindResize')
});

bindResize can be used to resize all items in the container when using a fluid layout (bindResize is in https://github.com/desandro/masonry/blob/master/dist/masonry.pkgd.js

$container.masonry({
    itemSelector: '.container'
});

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