jQuery代码不起作用(属性不是函数)

jQuery code not working (property not a function)

本文关键字:函数 属性 代码 不起作用 jQuery      更新时间:2023-09-26

我想在Wordpress网站(Agera模板)上实现这段代码。但代码返回错误:

TypeError:object[object object]的属性"$"不是函数

所以我把我的代码改成了这个(把$切换到jQuery):

jQuery('a[href^="#"]').click(function(){
jQuery('body').animate({
    scrollTop: jQuery(jQuery(this).attr('href')).offset().top - 30
}, 500);
});

不起作用。

我也试过(也把$改成jQuery,两者都试过):

jQuery(document).ready(function() {
$('a[href^="#"]').click(function(){
    $('body').animate({
        scrollTop: $($(this).attr('href')).offset().top - 30
    }, 4000);
});
});

不起作用。如果我尝试成功实现jQuery的代码,它可以正常工作,就像页面上的其他jQuery一样。

可能是什么问题?html标记是正确的。谢谢

您只需要在click method的末尾添加一个return false,如下所示:

$('a[href^="#"]').click(function(){
    $('body').animate({
        scrollTop: $($(this).attr('href')).offset().top
    }, 500);
    return false;
});

当然,在…之前加载jQuery。。。你可以看看这把小提琴:http://jsfiddle.net/WxJLx/29/

如果您使用的是旧版本的jQuery 1.4.2,请添加

jQuery.noConflict();

试试这个:

jQuery(document).ready(function($) {
    $('a[href^="#"]').click(function(){
        $('body').animate({
            scrollTop: $($(this).attr('href')).offset().top - 30
        }, 4000);
    });  
});

这个问题似乎与您的另一个问题非常相似。

所以请告诉我们你想了解的确切内容

  1. 你想了解动画是如何工作的吗?然后请看这个动画示例并要求更多的解释
  2. 你的代码在plnkr.co上的这个演示中可以工作,所以很难说出为什么它不适合你。请详细说明为什么你认为它不起作用
  3. 如果您想让我们在您的Wordpress网站(Agera模板)中找到错误TypeError: Property '$' of object [object Object] is not a function的原因,那么提供更多信息或更好的链接到不起作用的页面会很有帮助

关于第2点的代码

我只修改了你的代码一点点:

jQuery(function($)
{       
      $('a[href^="#"]').click(function(){
          $('body').animate({
              scrollTop: $($(this).attr('href')).offset().top -20
          }, 500);
          return false;
      });    
});

如上所述,请参阅plnkr.co 上的演示

关于第3点

关于您遇到的错误消息TypeError: Property '$' of object [object Object] is not a function,这些答案可能会有所帮助,甚至更多

请帮助我们帮助您

很抱歉问了以下问题,但如果不知道你对了解多少,很难提供帮助

  • 你知道什么是活动以及它们是如何运作的吗
  • 你用过chrome开发工具吗?它们使发现错误变得容易