使用常规 javascript 检测 Jquery,如果不存在,则动态加载它
Detect Jquery with regular javascript, if not present load it dynamcally
我需要代码来使用常规javascript来检测JQuery是否存在,如果没有,请从google或其他网站加载JQuery文件
更新两个工作解决方案(只需在此处复制并粘贴工作代码):
从 克劳迪奥·雷迪
window.jQuery || document.write("<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js'>'x3C/script>")
来自 罗伯·达尔文
var jQueryScriptOutputted = false;
function initJQuery() {
if (typeof(jQuery) == 'undefined') {
if (! jQueryScriptOutputted) {
jQueryScriptOutputted = true;
document.write("<scr" + "ipt type='"text/javascript'" src='"https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'"></scr" + "ipt>");
}
setTimeout("initJQuery()", 50);
}
}
initJQuery();
有很多方法,我最喜欢这个只是因为不那么冗长
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"></script>
<script>window.jQuery ||
document.write("<script src='js/jquery-1.7.2.min.js'>'x3C/script>")
</script>
在不使用 document.write
的情况下加载 jQuery 的好方法是:
if (window.jQuery === undefined) {
var s = document.createElement('script');
s.src = "//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js";
document.head.appendChild(s);
}
但是,这将导致异步加载 - 因此您可能希望包含一个.onload
处理程序,以允许执行等待加载完成。
这样的事情应该有效。
编辑:从上面的链接添加的代码。
var jQueryScriptOutputted = false;
function initJQuery() {
//if the jQuery object isn't available
if (typeof(jQuery) == 'undefined') {
if (! jQueryScriptOutputted) {
//only output the script once..
jQueryScriptOutputted = true;
//output the script (load it from google api)
document.write("<scr" + "ipt type='"text/javascript'" src='"http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js'"></scr" + "ipt>");
}
setTimeout("initJQuery()", 50);
} else {
$(function() {
//do anything that needs to be done on document.ready
});
}
}
initJQuery();
相关文章:
- 正在将事件处理程序添加到不存在的类
- javascript如果图像不存在don't加载它
- 由于响应中不存在“Access Control Allow Origin”标头,跨域请求停止工作
- JavaScript-如果以前不存在文本,如何从文本区域删除新行
- 如何将一个函数附加到一个不存在的元素上
- 在scala或scalajs Diode中,现有类型中的任何一种都符合“;更新一个没有'还不存在”;
- 查找数组's按属性不存在于另一个数组中的对象
- 用javascript在对象上创建不存在的方法
- 仅当值不为'不存在
- casperjs-css选择器存在,但当单击它时会引发“”;CasperError:无法在不存在的选择器“”上调度mou
- 如何使用JS检查AWS S3上是否存在动态创建的文件
- 运行时不存在Javascript函数
- 使用webdriver和selenium验证元素是否不存在
- 如果文件不存在,fs.watch是否有错误处理程序
- 试图把注意力集中在一个不重要的元素上是不是一种糟糕的做法;不存在
- Backbonejs:在视图中渲染的模型,但在集合中不存在
- 从params推送到对象(如果不存在)
- 使用常规 javascript 检测 Jquery,如果不存在,则动态加载它
- 为服务器上不存在文件的URL动态创建内容的正确方法
- 是否有可能动态调用一个不存在的方法,然后创建它