未捕获的TypeError:无法读取未定义错误的属性“top”

时间:2016-02-07 18:19:31

标签: javascript jquery css

我想从feature-animate div的顶部更改我的班级名称我的页面滚动400,但是我收到了这个错误。

请参阅此链接以获取我的代码

https://jsbin.com/zafove/edit?html,js,output

  

未捕获的TypeError:无法读取未定义错误的属性“top”

 if(wScroll > $('.feature-animate').offset().top - 400 ){
            $('.feature-animate').each(function(j){
                setTimeout(function(){
                $('.feature-animate').eq(j).addClass('isShowing');
                },100 * (i+1));

3 个答案:

答案 0 :(得分:0)

错误消息表明jquery没有找到类<div class="feature-animate">...your other html code </div> 的html节点。第一个也是最可能的原因:你的HTML代码中有拼写错误。确保它看起来像这样:

$('.feature-animate').offset().top

然后它应该工作。

顺便说一句:如果你有多个具有相同类名的div容器,top将获得DOM中该类的第一个元素的{{1}}值。

答案 1 :(得分:0)

确保在运行javascript之前已经初始化了具有feature-animate类的元素。一个很好的方法是将它放在$(document).ready()标记内。

答案 2 :(得分:0)

jQuery无法找到&#34; feature-animate&#34;元素,因为在html中它的编写如下。

    <div classs="row feature-animate"> 

(请注意3&#39;在&#39;班级&#39;)

应该如下:

    <div class="row feature-animate"> 

(删除额外的&#39;并使其成为&#39; class&#39;)