8

我有一个 HTML 页面,我想在其中导入一个 JS 文件,如下所示:

<script src="file.js" type="text/javascript" charset="utf-8"></script>

但是如果这个文件无法运行它的脚本,整个页面显然会卡住。

我可以在 try-catch 块中导入该文件吗?

4

3 回答 3

5

您可以侦听错误(请参阅this

// make a script
var s = document.createElement('script');
// set it up
s.setAttribute('src',"file.js");
s.setAttribute('type',"text/javascript");
s.setAttribute('charset',"utf-8");
s.addEventListener('error', errorfunction, false);
// add to DOM
document.head.appendChild(s);

然后在errorfunction,找出发生了什么并尝试修复它,就像你在catch

于 2012-08-26T13:19:32.113 回答
-1

您可以使用AJAX。这假设您有jQuery,但您可以轻松避免使用它(在这里您可以找到许多教程之一)。这是一个例子:

$.get("http://yoursite.com/file.js", function(data) {
    try {
       eval(data); //Run the JavaScript, which is equivalent to adding it
    }
    catch (err) {
       //handle errors
    }
});

希望以任何方式有所帮助!

于 2012-08-26T13:01:40.207 回答
-1

您可以尝试类似的方法或创建 JS 元素并在此元素中设置 src

document.write("<script src=\"file.js\" type=\"text/javascript\" charset=\"utf-8\"></script>");
于 2018-11-17T15:44:07.560 回答