我如何添加jQuery头部与JavaScript
How Do I Add jQuery To Head With JavaScript?
我试图有条件地将jQuery包含到HTML页面。只有当它还不存在时才需要添加。
我在body标签顶部附近使用以下代码注入一个脚本标签,该标签在头部包含jQuery库。
<script type="text/javascript">
if (typeof jQuery === 'undefined') {
alert('now adding jquery');
var head = document.getElementsByTagName("head")[0];
script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js';
head.appendChild(script);
if (typeof jQuery === 'undefined') {
alert('jquery still not present :(');
}
} else {
alert('jquery already present');
}
</script>
当我执行它时,我得到的消息是添加jQuery后仍然不存在。脚本标签使正确地显示在加载页面的源代码中。
在我的页面下面尝试使用jQuery,确认jQuery确实不起作用。正如预期的那样,Chrome的JavaScript控制台显示"$ not defined"。
我怎样才能使它工作?
脚本异步加载。这意味着在附加元素之后,它的内容不能直接使用。
用onload
代替:
script = document.createElement('script');
script.onload = function() {
// jQuery is available now
};
script.type = 'text/javascript';
script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js';
head.appendChild(script);
Boilerplate使用这个方法来测试jQuery是否被google加载,如果没有使用local:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/libs/jquery-1.6.2.min.js"><'/script>')</script>
似乎是你想要实现的:)
在将脚本追加到文档
后,不需要等待脚本加载在附加之前试试下面的代码:
function helper(){
if (typeof jQuery === 'undefined') {
alert('jquery still not present :(');
}
};
script.onreadystatechange= function () {
if (this.readyState == 'complete') helper();
}
script.onload= helper;
如果你想知道更多,我在这里找到了
也有加载器像StealJS或YepNope
相关文章:
- 在<头部>使用javascript/jQuery
- "$"未定义;jquery在<头部>;没有冲突的脚本或库
- 无法动态地将 jquery 添加到头部并运行 jquery 代码
- 如何获取头部中提到的jquery文件的链接
- Jquery 删除输出上的头部和身体标签
- 头部部分的 JQuery 不起作用
- 为什么 jQuery 在使用样式标签填充 iframe 时会删除正文和头部标签,但不能没有样式标签
- jQuery在底部,等待<头部>直到它被加载
- jQuery移动可折叠按钮在头部,停止折叠/展开
- 使用移动版jquery和cordova时,可折叠列表视图的头部不能刷新
- JQuery头部格式语法(CSS)
- 如何使用JS/AJAX/JQUERY为POST表单添加头部授权
- 在PHP页面中加载jQuery -没有头部标签
- 我如何添加jQuery头部与JavaScript
- 为什么用jQuery在头部插入脚本如此奇怪?
- jQuery通过JS加载在头部
- 我如何检索数据行,取决于头部选择的值使用jquery
- 结合jQuery表和头部:如何分配最终的html输出
- Js /jquery替换头部注释中的内容
- 注入css链接到头部与javascript/jquery