JS错误未捕获TypeError:无法读取属性' top'为null

时间:2014-12-06 09:33:10

标签: jquery ajax wordpress

我在页面上添加了滚动功能。以下是我的代码

jQuery(function(){
jQuery('.display-center a').click(function(e){
        e.preventDefault();
        var section=jQuery(this).attr('href');
        jQuery('html, body').animate({
    scrollTop: jQuery(section).offset().top-100
}, 1000);

        });
});

IT gaves Uncaught TypeError:无法读取属性' top'为null。请帮助我任何人

1 个答案:

答案 0 :(得分:0)

您不能将href属性的值用作jQuery中的选择器。您可以在链接中定义iddata属性,例如<a href="..." data-scrollTo="myDiv" class="display-center">..</a>。现在,您要滚动到的相应元素应将此id设置为您在data-scrollTo属性中定义的值,如下所示:<div id="myDiv">...</div>。 然后你可以将它与你的代码一起使用:

jQuery(function(){
    jQuery('.display-center a').click(function(e){
        e.preventDefault();
        var section=jQuery(this).data('scrollTo');
        jQuery('html, body').animate({
             scrollTop: jQuery("#"+section).offset().top-100
        }, 1000);
    });
 });