这是我的代码。
if(!window.jQuery) {
var script = document.createElement('script');
script.type = "text/javascript";
script.src = LIB_URL+"js_files/jquery.js";
document.getElementsByTagName('head')[0].appendChild(script);
}
var script = document.createElement('script');
script.type = "text/javascript";
script.src = LIB_URL+"js_files/myjs.js"; //needs jquery to be loaded
document.getElementsByTagName('head')[0].appendChild(script);
问题是我第一次从网址栏加载页面(加载或重新加载页面),包含jquery,一切正常。当我点击f5刷新页面时,它会给出以下错误:
ReferenceError:$未定义
$(函数(){
但是,当我查看页面文档jquery时,它包含在内。我怎样才能确保这不仅可以在我重新加载页面而且还可以在刷新时运行。任何帮助将不胜感激。
答案 0 :(得分:1)
var jq = document.createElement('script');
jq.src = "//ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(jq);
jq.onload = procede; //DON'T TYPE PARENTHESIS!
//i.e. 'procede()' runs INSTANTLY (NOT WHEN LOADED)
// 'procede' gives it a function to run when it's ready (what you want!)
...
function procede () {
//jQuery commands are loaded (do your magic)
}