从函数内部引用存储返回的jQuery对象的全局变量

sil*_*tar 2 jquery scope

好吧,我知道这里有一些简单的东西,我想要丢失,我所要做的就是存储从jQuery查询返回的对象,如

var obj = $("#objectID");

作为一个全局vand然后从函数内引用它.

下面的示例提供了狗的图片,但随后使用jQuery交换图像的src属性以显示一只猫.我错过了什么?

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <html>
    <head>
    <!-- jquery -->
    <script src="jquery-1.6.1.min.js" type="text/javascript" language="javascript"></script>
    <!-- image swap -->
    <script type="text/javascript" language="javascript">

    // a global jQuery object
    var globalMainImage = $("#mainImage");
    // a global integer
    var globalInteger = 420;

    $(document).ready(function() {
        /* this works
        $("#mainImage").hide();
        $("#mainImage").attr("src", "http://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Youngkitten.JPG/800px-Youngkitten.JPG");
        $("#mainImage").fadeIn(1500); 
        */

        /* and this works
        var localMainImage = $("#mainImage");
        localMainImage.hide();
        localMainImage.attr("src", "http://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Youngkitten.JPG/800px-Youngkitten.JPG");
        localMainImage.fadeIn(1500); 
        */

        /* and this works
        alert(globalInteger);
        */

        /* but this doesn't */
        globalMainImage.hide();
        globalMainImage.attr("src", "http://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Youngkitten.JPG/800px-Youngkitten.JPG");
        globalMainImage.fadeIn(1500);
    });
    </script>

    </head>
<body>
    <img id="mainImage" src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/YellowLabradorLooking_new.jpg/250px-YellowLabradorLooking_new.jpg" />     
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Jam*_*gne 5

var globalMainImage = $("#mainImage"); 在document.ready之外,元素在执行此代码时不存在.

做这个:

var globalMainImage

$(document).ready(function() {
   globalMainImage = $("#mainImage");
}
Run Code Online (Sandbox Code Playgroud)