我正在使用 JQuery 在网页的正文选项卡中动态注入脚本标签。我得到了类似的东西:
function addJS(url) {
$("body").append('<script type="text/javascript" src='+url+'></script>');
}
我以这种方式添加了几个脚本,然后尝试使用它们。例如:
lib.js
function core() {...}
alert("I'am here !");
初始化.js
addJS("lib.js");
c = new core();
测试.html
<html>
<head>
<title>test</title>
<script type="text/javascript" src="init.js"></script>
</head>
<body>
Hello
</body>
</html>
加载 test.html 会弹出“我在这里”,然后以错误“未定义核心”结束。当然,合并这两个 JS 文件将使它们完美地工作。
我只是不明白它o_O。
编辑
我简化了这个例子,但杰夫的回答让我明白这是一个错误。所以这里有一些细节:
init.js 在重新加载时不在 test.html 的头部,因为我用在小书签上执行的代码注入它。
所以真正的执行过程如下:
重新加载 test.html > 运行书签 > 插入 jquery 和 init.js > 插入 lib.js
对困惑感到抱歉。
编辑 2
现在我有了解决问题的方法(很快:-)),但我仍然对我的问题的答案感兴趣。为什么会出错?