2013-04-23 60 views
4

螢火蟲是給錯誤:

TypeError: $(...) is null 
$('#menu img').hover(

我不知道爲什麼。看似有問題的腳本是這樣它取代的圖像時,將光標懸停在圖片:

$(document).ready(function() 
{ 
    var storeNormalPath; 
    $('#menu img').hover(
     function() 
     { 
      storeNormalPath = $(this).attr('src'); 
      var imgArray = $(this).attr('src').split('.jpg'); 
      $(this).attr('src', imgArray[0]+'Hover.jpg'); 
     }, 
     function() 
     { 
      $(this).attr('src', storeNormalPath); 
     } 
     ).click (function() 
     { 
      //empty now 
     }); 
}); 
+1

如果dayala的答案解決了您的問題,那麼您應該標記爲「接受的答案」.....我建議您閱讀[faq](http://stackoverflow.com/faq)以獲得更多熟悉Stack Overflow ....歡迎! :D – 2013-04-24 03:10:56

回答

4

經過一番使用Chrome的控制檯尋找你的頁面,看起來,即使是$(document)返回null。 jQuery(document)然而,作品,這表明有什麼與jQuery的$運算符衝突。

來源:我會引導您到這個問題:$.document is null

看到你有兩個jQuery的1.5.1.min.jsjquery.1.4.2.js引用在您的頁面標題中,也許這可能是衝突的原因?你有沒有嘗試加載其中的一個?

讓我們知道,如果有幫助,抱歉,我不能有更多的幫助。 祝你好運!

+0

剛剛刪除他們和使用1.9.1。發生相同的錯誤。這是唯一的jquery文件,它在任何jQuery之前被調用。 – Joshua 2013-04-23 16:29:54

+1

好吧,替換所有$(元素)jQuery(元素)應該可以工作,但理想情況下可以找到衝突的起源。 我最後看了看你的腳本,也許在calscript.js中的第一個函數「function $(element)」是罪魁禍首?你有沒有試過評論這個功能? 當然,這只是如果你想使用jQuery $(元素)速記符號。 來源:http://stackoverflow.com/questions/1058463/what-is-jquerydocument-vs-document – dayala 2013-04-23 17:00:15

相關問題