jQuery Uncaught TypeError:无法读取属性' top' undefined - Scoll to Top

时间:2017-05-01 20:35:27

标签: jquery html scroll

我试图创建一个滚动到页面部分的垂直菜单。我发现很多人遇到类似问题,但找不到合适的解决方案。

这是我的javascript:

//Scroll to Section
        jQuery('.p-pagination span').on('click', function() {
            var sectionID = jQuery(this).attr('id');
            console.log(sectionID);

            if (sectionID.length){

                jQuery('html, body').animate({
                    scrollTop: jQuery(sectionID).offset().top
                }, 1000);


            }

HTML标记:

<div class="p-pagination">
<span id="951" class="active"></span><span id="956"></span><span id="1119"></span><span id="1123"></span><span id="1117"></span><span id="1114"></span><span id="1112"></span><span id="1110"></span><span id="1099"></span>
<span id="953"></span><span id="946"></span><span id="1129"></span>
</div>

我发现的大多数解决方案都是对元素长度进行检查,但它对我不起作用。我一直收到错误。

感谢。

1 个答案:

答案 0 :(得分:1)

尝试将该行更改为:

scrollTop: jQuery('#'+sectionID).offset().top