将Jquery对象声明为变量?

时间:2013-08-17 12:59:49

标签: javascript jquery

我是Jquery和javascript的新手。

当我编写javascript代码时,我发现自己经常使用特定的jquery对象,所以我为它声明了一个变量。例如,

$(document).ready(function() {
    var object_list = $("#object_list");

    /*Do something with the variable*/        
    alert(object_list);
    object_list.hide();
});

但是,这似乎不起作用(“alert(object_list)”给我一个空值)。

在jquery ???

中声明这样的变量是错误的

如果是这样,那么正确的方法是什么,以便我可以参考常用的Jquery对象?\

谢谢!

2 个答案:

答案 0 :(得分:4)

您的jQuery可能在noConflict mode中工作,这意味着您在代码中的某个位置分离了别名$ = jQuery。例如,WordPress会这样做(参见wp-includes/js/jquery.js的最新行)。

请改用此代码:

jQuery(document).ready(function($) {
    var object_list = $("#object_list");

    /*Do something with the variable*/        
    alert(object_list);
    object_list.hide();
});

您正在做的是在.ready方法中对jQuery对象进行别名,请参阅.ready()方法文档中别名jQuery命名空间部分。

答案 1 :(得分:1)

您可以将代码包装在立即函数中,以避免命名与$的冲突。当您使用$已经拥有大量代码并且重构更改名称可能容易出错时,此技术非常有用。

(function($){
    $(document).ready(function() {
     var object_list = $("#object_list");

     /*Do something with the variable*/        
      alert(object_list);
      object_list.hide();
    });
})(jQuery);