滚动脚本给出此错误----> TypeError:$(...)。offset(...)未定义

时间:2017-08-31 09:10:04

标签: javascript button woocommerce

这是我的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>

一切正常,但控制台发出此错误

TypeError:$(...)。offset(...)未定义

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

3 个答案:

答案 0 :(得分:3)

$("#button").offset().top

需要: -

$("button").offset().top // or $(this).offset().top

注意: - 您也可以在按钮中添加id="button"(如果您想让自己的代码正常工作)。

答案 1 :(得分:1)

解决方案1 ​​

删除#

$("button").offset().top // or $(this).offset().top

解决方案2

添加id="button"

<button id="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> 

答案 2 :(得分:1)

解决了这个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>

以这种方式添加到CART按钮工作&amp;所有jQuery在此页面上都能正常工作