用Javascript加载jQuery并使用jQuery

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (60)

我使用以下方法将jQuery库追加到dom:

 var script = document.createElement('script');
 script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
 script.type = 'text/javascript';
 document.getElementsByTagName('head')[0].appendChild(script);

然而,当我运行时:

jQuery(document).ready(function(){...

控制台报告错误:

Uncaught ReferenceError: jQuery is not defined

如何动态加载jQuery,以及如何在它在dom中使用jQuery?

提问于
用户回答回答于

可以使用一些现有的JavaScript加载器,或者通过观察window.jQuery来定义自己的代码。

// Anonymous "self-invoking" function
(function() {
    // Load the script
    var script = document.createElement("SCRIPT");
    script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
    script.type = 'text/javascript';
    script.onload = function() {
        var $ = window.jQuery;
        // Use $ here...
    };
    document.getElementsByTagName("head")[0].appendChild(script);
})();

请记住,如果需要支持旧浏览器(如IE8),load则不会执行事件处理程序。在这种情况下,你需要轮询window.jQuery重复使用的存在window.setTimeout

用户回答回答于

你也可以用

document.write('<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"><\/script>');

使用它document.write被认为是不好的做法,但为了完成这件事,提一提就好了。

扫码关注云+社区

领取腾讯云代金券