
[英]How to use imagesLoaded.js in conjunction with jribbble.js and masonry.js
[英]Why am I getting “cannot read property 'length' of null” in my imagesLoaded.js while using masonry
我正在尝试使用砌体和animonscroll.js复制鼓膜演示。 唯一的区别是我使用的div卡中包含图像,而不仅仅是图像。
这是工作中的鼓膜演示http://jsfiddle.net/Sfmv9/19/light/
这是我的代码: http : //codepen.io/anon/pen/CotJv 。
无论出于何种原因,这在Codepen中都有效,但是我在本地计算机上遇到以下问题。
卡片没有滚动动画
偶尔,这些卡会一次又一次地加载(我猜这意味着imagesLoaded不能做到这一点)
我收到:
'TypeError:无法读取null imagesloaded.js的属性'length'
这是我在过去两个月中发布的有关此问题的第三个问题,但仍然无法弄清为什么我会收到此错误以及如何解决它。 我将再次发布此信息(包含更多具体信息),以查看是否有人可以提供帮助。
错误似乎出在imagesloaded.js中的此函数中
// turn element or nodeList into an array
function makeArray( obj ) {
var ary = [];
if ( isArray( obj ) ) {
// use object if already an array
ary = obj;
} else if ( typeof obj.length === 'number' ) {
// convert nodeList to array
for ( var i=0, len = obj.length; i < len; i++ ) {
ary.push( obj[i] );
}
} else {
// array of single index
ary.push( obj );
}
return ary;
}
根据上obj.length == 'number'
文章中某人的建议,我尝试将obj.length == 'number'
更改为:
if ( obj && typeof obj.length === 'number' )
我还尝试了在许多其他尝试的解决方案中将我的容器类更改为AnimOnScroll.js中的容器ID,但错误仍然存在。 因为我对js不太满意,所以我无法跟踪AnimOnScroll,ImagesLoaded和Masonry彼此之间如何连接,所以我不知道问题出在实际上是ImagesLoaded.js还是AnimOnScroll.js。
最让我感到困惑的是为什么这在Codepen中有效但在我的本地计算机上无效。
如果有帮助,这里是我以前的问题的链接。
您是否有机会在<head>
调用脚本?
尝试将其放在结束</body>
标记之前。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.