当点击按钮时,滚动到特定的按钮位置到下一个ID

时间:2017-08-31 作者:james crook

这是我的jscript

 <script>
    jQuery(document).ready(function($){
        $("button").on(\'click\', function(event) {

            event.preventDefault();
                $(\'html, body\').stop().animate({
                    scrollTop: $("#button").offset().top
                }, 1000);


        });
    });
    </script>
这是我的自定义按钮

 <button name="button" style="margin: 9px 0 20px 0;padding: 3px 25px; background-color: red;color: white;font-weight: bold;" value="OK" type="button" >HAVE A QUESTIONS</button> 
这是滚动底部位置(将顶部按钮滚动到此位置)

<!-- Have Question -->
<div class="content-teaser container text-center">
    <h3 class="text-red center-block text-center"  id="button" >Have Questions?</h3>
    <p>Talk with someone on the team We\'re here
to answer question</p>
一切正常,但控制台出现此错误

类型错误:$(…)。偏移量(…)未定义

这个错误是什么?我无法理解plz解决了这个错误,因为这个错误与其他脚本冲突,我的页面无法工作

2 个回复
最合适的回答,由SO网友:james crook 整理而成

已解决此jQuery错误。。。。。。。。。。。。。。

<script>
    jQuery(document).ready(function($){
        $("button").on(\'click\', function(event) {

            var target = $("#button");

            if( target.length ) {
                event.preventDefault();
                $(\'html, body\').stop().animate({
                    scrollTop: target.offset().top
                }, 1000);
            }

        });
    });
    </script>
以这种方式添加到购物车按钮工作(&A);所有jQuery在此页面上正常工作

SO网友:FullStack Alex

您应该将整个函数/脚本放在所谓的IIFE中,如下所示:

(function($){

    //your code

})(jQuery);
在Wordpress中,由于可能与其他JavaScript库发生冲突,默认情况下$不会附加到jQuery。

结束