jQuery hoverIntent:'未捕获的TypeError:无法调用方法'apply'of undefined'

Bri*_*ian 14 javascript debugging syntax jquery

我正在使用Brian Cherne的hoverIntent.js插件进行项目.这是一个很棒的插件,但似乎在jQuery 1.7.1中被打破了.

我正在尝试调试它,但我不是那里最杰出的javascripter.任何人都可以告诉我在他的代码中我可能需要寻找什么来修复以下错误消息:

Uncaught TypeError: Cannot call method 'apply' of undefined

这就是我的Chrome控制台告诉我的内容.我只是不确定要改变什么.

插件中包含以下代码行,其中包含apply字符串

return cfg.over.apply(ob,[ev])}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}};

编辑

我应该发布链接到Brian的完整注释代码.它在这里:http://cherne.net/brian/resources/jquery.hoverIntent.js

编辑2

我的脚本如下

//#nav-main dropdown effects                
$('#nav-main ul li').hoverIntent(function () {
   $(this).find('.dropdown').stop(true,true).slideToggle('500');
});
Run Code Online (Sandbox Code Playgroud)

noo*_*oob 29

基本上hoverIntent需要两个函数或一个对象.

如果你只放入一个函数,它将尝试使用你的函数作为对象,你不能应用一个函数!所以使用:

$('#nav-main ul li').hoverIntent(function () {
    $(this).find('.dropdown').stop(true,true).slideToggle('500');
}, function(){});
Run Code Online (Sandbox Code Playgroud)

  • 没有什么比谦虚...... :) (4认同)