2010-11-09 162 views
1

我正在使用jQuery的qTip 1.0.0-rc3插件。而且,虽然这不是什么大不了的事,我很好奇,为什么这个工程:为什么这个JavaScript不起作用?

$(document).ready(function() { 
    if (jQuery().qtip) { 
     $('[data-qtip]').each(function() { 
      var qTipContent = $(this).attr("data-qtip"); 
      $(this).qtip({ content: qTipContent }); 
     }); 
    } 
}); 

,这确实工作:

$(document).ready(function() { 
    addToolTips(); 
}); 

function addToolTips() { 
    if (jQuery().qtip) { 
     $('[data-qtip]').each(function() { 
      var qTipContent = $(this).attr("data-qtip"); 
      $(this).qtip({ content: qTipContent }); 
     }); 
    } 
}; 

前者被一个功能,而中调用后者不是。下面是从Firebug的错误消息:

f(this).data("qtip") is null 

我敢肯定,这是愚蠢的东西,但我缺少什么?

谢谢。

+3

我怀疑别的东西是不对的。这些行为是相同的,除了addToolTips不在其他地方调用(它们都是从“在函数内部”执行的)。 – 2010-11-09 23:43:41

回答

1

哇,我觉得很愚蠢。我发现在另一个本地文件中存在隐藏的冲突。我知道一切都看起来不错!谢谢您的帮助。

+2

我的评论获胜!喔! – 2010-11-10 00:01:15

0

尝试将this传递给addToolTips()作为参数。

1

您提供的代码是在“全局范围”中执行,还是由{和}(在另一个函数或其他东西中)包装?