2010-11-09 167 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

您提供的代碼是在「全局範圍」中執行,還是由{和}(在另一個函數或其他東西中)包裝?