砌体 (v3) 代码:
$(function msnry(){
var columns = 3,
setColumns = function() { columns = $( window ).width() > 640 ? 3 : $(window).width() > 320 ? 2 : 1; };
setColumns();
$(window).resize(setColumns);
// layout Masonry again after all images have loaded
var $container = $('#portfoliocontent').masonry();
var msnry;
$container.imagesLoaded( function(){
msnry = new Masonry( container, {
itemSelector : '.item',
columnWidth: function( containerWidth ) { return containerWidth / columns;}
});
});
我的砖石容器(又名我的投资组合)
<div id="portfoliocontent" class="portfoliocontainer"></div>
我的目标是隐藏所有“designshwr”类有效的 div,但是重新加载砌体根本不起作用。
$('.engineeringiC').click(function(){
if($('div.item').hasClass('designshwr')){
$('div.item.designshwr').hide('fast');
$('.portfoliocontainer').masonry('reloadItems');
有什么建议吗?在过去的一周里,我一直在绞尽脑汁地想方设法让它发挥作用,但我仍然没有得到任何运气 :(
最佳答案
我终于完整地解决了这个问题。
$(function msnry(){
var columns = 3,
setColumns = function() { columns = $( window ).width() > 640 ? 3 : $(window).width() > 320 ? 2 : 1; };
setColumns();
$(window).resize(setColumns);
// layout Masonry again after all images have loaded
var $container = $('#portfoliocontent').masonry();
var msnry;
$container.imagesLoaded( function(){
msnry = new Masonry( container, {
itemSelector : '.item',
columnWidth: function( containerWidth ) { return containerWidth / columns;}
});
});
var $container = $('#portfoliocontent').masonry();
如果其他人遇到此问题,那可能是因为您将砌体初始化应用到了您的容器变量。它现在运行良好:)
关于javascript - 砌体重新加载和重新加载项目不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17394833/