“ TypeError:$(...)为null”这是怎么回事?

Jos*_*hua 4 javascript firebug typeerror

Firebug正在给出错误:

TypeError: $(...) is null
$('#menu img').hover(
Run Code Online (Sandbox Code Playgroud)

我不知道为什么。看似有问题的脚本是当光标悬停在图像上时替换图像的脚本:

$(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
        });
});
Run Code Online (Sandbox Code Playgroud)

day*_*ala 5

在使用chrome的控制台浏览页面后,看起来甚至$(document)返回null。 jQuery(document)但是,它可以正常工作,这表明与jQuery的$运算符存在冲突。

资料来源:我将引导您到这个问题:$ .document为null

看到页面标题中同时引用了jquery-1.5.1.min.jsjquery.1.4.2.js,也许这可能是冲突的原因?您是否尝试仅加载其中之一?

让我们知道是否有帮助,对不起,我没有更多帮助。祝好运!

  • 很好,替换所有$(element)jQuery(element)应该可以,但是理想情况下,一个可以找到冲突的根源。我最后看了看您的脚本,也许在calscript.js中,第一个函数“ function $(element)”是罪魁祸首吗?您是否尝试过注释该功能?当然,仅当您想使用jQuery $(element)简写表示法时。来源:http://stackoverflow.com/questions/1058463/what-is-jquerydocument-vs-document (2认同)