gpt4 book ai didi

jquery - 响应式 Masonry jQuery 布局示例

转载 作者:行者123 更新时间:2023-12-03 22:09:30 24 4
gpt4 key购买 nike

谁能建议这个网站如何使用 jQuery Masonry 插件来实现响应式、流畅的布局?

http://tympanus.net/codrops/collective/collective-2/

具体;

在浏览器调整大小时,列数从 3 变为 2,再变为 1,这正是您对使用砌体的网站所期望的,但有趣的是列也调整大小以始终填充可用的完整宽度。我见过的大多数其他砌体站点都会随着列数的变化而在列的右侧留下间隙(例如 http://masonry.desandro.com/ ),或者列填充整个宽度,但列数保持不变( http://masonry.desandro.com/demos/fluid.html )。他们是在浏览器调整大小时动态设置列数并结合 CSS 媒体查询,还是可能使用 CSS3 列?

谢谢。

最佳答案

这是我们正在查看的代码。

jQuery(document).ready(function($) {
var CollManag = (function() {
var $ctCollContainer = $('#ct-coll-container'),
collCnt = 1,
init = function() {
changeColCnt();
initEvents();
initPlugins();
},
changeColCnt = function() {
var w_w = $(window).width();
if( w_w <= 600 ) n = 1;
else if( w_w <= 768 ) n = 2;
else n = 3;
},
initEvents = function() {
$(window).on( 'smartresize.CollManag', function( event ) {
changeColCnt();
});
},
initPlugins = function() {
$ctCollContainer.imagesLoaded( function(){
$ctCollContainer.masonry({
itemSelector : '.ct-coll-item',
columnWidth : function( containerWidth ) {
return containerWidth / n;
},
isAnimated : true,
animationOptions: {
duration: 400
}
});
});
$ctCollContainer.colladjust();
$ctCollContainer.find('div.ct-coll-item-multi').collslider();
};
return { init: init };
})();
CollManag.init();
});

基本想法似乎是添加一个列选择器来找出可以设置多少列。第二步是使用smartresize event在函数中。第三步是使用列的“动态”宽度调用砌体。玩得开心:)

关于jquery - 响应式 Masonry jQuery 布局示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9047449/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com