试图加入最新版本的砌体,我对这个错误意味着什么毫无头绪。在控制台中,我收到此消息:
Bad masonry element: [object Object] plugins.js:16
y plugins.js:16
n plugins.js:16
(anonymous function) script.js:24
c jquery.js:3048
p.fireWith jquery.js:3160
x.extend.ready jquery.js:433
q
我的剧本 -
var $container = $('#container');
$container.imagesLoaded( function(){
var msnry = new Masonry( $container, {
columnWidth: 320,
itemSelector: '.item'
});
});
我已确保包含imagesLoaded插件,即使我将其排除在外,也会显示相同的错误。它似乎是指我的plugins.js文件,我存储了Masonry的代码,但我没有修改任何东西。
答案 0 :(得分:15)
您正在将jQuery对象($container
)传递给不期望它的Masonry构造函数。
您可以将其更改为$container[0]
以从jQuery对象获取DOM元素:
$container.imagesLoaded( function(){
var msnry = new Masonry( $container[0], {
columnWidth: 320,
itemSelector: '.item'
});
});
或使用jQuery初始化:
$container.imagesLoaded( function(){
$container.masonry({
columnWidth: 320,
itemSelector: '.item'
});
});