仅在加载jquery时运行document.ready

时间:2012-04-27 18:43:57

标签: jquery

我在全局JS文件中有这段代码。

$(document).ready(function() {
       DoStuff();
 });

不幸的是,有些页面包含此文件但不包含jquery文件。所以我得到错误:

Message: The value of the property '$' is null or undefined, 
not a Function object

如果加载了JQuery文件,我该如何运行document.ready()

6 个答案:

答案 0 :(得分:6)

if(window.jQuery) {
    $(document).ready(function() {
        DoStuff();
    });
}

<强>更新

检查window.jQuery而非jQuery。这应该绕过“未定义”错误。

答案 1 :(得分:3)

您将首先测试jQuery的存在:

 if(jQuery)
 {
     $(document).ready(function() { ... });
 }

答案 2 :(得分:0)

怎么样:

 if($){
   // your code here.
 };

答案 3 :(得分:0)

好吧,将你的代码包装在里面:

if ( $ != undefined && $ != null) {
 //everything here

}

答案 4 :(得分:0)

如果加载了jQuery,并且您仍然遇到该错误,请尝试以下操作:

jQuery(function($) {
    $(document).ready(function() {
        DoStuff();
    });
});

http://api.jquery.com/jQuery/#jQuery3

如果您的意思是“已加载”,则无法使用“ready()”功能。

答案 5 :(得分:0)

if(jQuery) {  
    $(function() {
        //...
    });
} 

if(typeof jQuery != 'undefined') {  
    $(function() {
        //...
    });
}