我需要在js文件中包含jQuery,因为它将作为外部脚本加载。
这是我的代码:
function addjQuery() {
if (!window.jQuery) {
var jq = document.createElement("script");
jq.type = "text/javascript";
jq.src = "https://code.jquery.com/jquery-3.2.1.min.js";
document.getElementsByTagName("head")[0].appendChild(jq);
console.log("Added jQuery!");
} else {
console.log("jQuery already exists.")
}
}
addjQuery();
jQuery(function($) {
$(document).ready(function() {
});
});
但是发生了错误: 未捕获的ReferenceError:未定义jQuery
即使我运行" jQuery"或" $"在chrome dev工具的控制台上,它正在工作。
问题是什么?
答案 0 :(得分:1)
jQuery()
函数在从脚本标记加载jQuery之前触发 - 您可以添加onload
事件处理程序以在脚本完成下载时触发它:
function addjQuery() {
if (!window.jQuery) {
var jq = document.createElement("script");
jq.type = "text/javascript";
jq.src = "https://code.jquery.com/jquery-3.2.1.min.js";
document.getElementsByTagName("head")[0].appendChild(jq);
jq.onload = initjQuery;
console.log("jQuery is loaded!");
} else {
console.log("jQuery already exists.")
}
}
function initjQuery () {
jQuery(function($) {
$(document).ready(function() { });
});
}
addjQuery();