我正在尝试通过脚本将jQuery添加到我的文档中,但是根据firebug,尽管脚本元素及其属性附加到DOM,但是从未找到jQuery库。即使在等了很长时间之后,图书馆也无法使用。我做错了什么。
if(typeof jQuery === 'undefined'){
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js";
document.getElementsByTagName("head")[0].appendChild(script);
}
答案 0 :(得分:0)
从我的一些代码中复制了以下代码(我认为这只是为了安全)应该有效:
if (typeof(jQuery.ui) == 'undefined')
{
var script = document.createElement('script');
script.src = url;
var head = document.getElementsByTagName('head')[0],
// Attach handlers for all browsers
script.onload = script.onreadystatechange = function() {
if (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete')) {
// callback function provided as param
if(success != null)
{
success();
}
script.onload = script.onreadystatechange = null;
};
};
head.appendChild(script);
}
顺便说一句,成功是我为实际初始化定义的回调函数。就像gdoron说你需要等待它加载。
答案 1 :(得分:-1)
试试这个。它简单而且工作正常..
if(typeof jQuery === 'undefined'){
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js";
document.head.appendChild(script);
}
答案 2 :(得分:-2)
相反,如果使用script.src
尝试使用setAttribute
功能。
if (typeof jQuery === 'undefined') {
var script = document.createElement("script");
script.setAttribute("type","text/javascript");
script.setAttribute("src","http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js");
document.getElementsByTagName("head")[0].appendChild(script);
}