0

到目前为止,这是我的代码,主要问题是有时会在加载主页后加载脚本,使用 AJAX 请求页面并在输出上使用 parseScript,有没有办法让这个函数暂停而不返回在浏览器加载所有脚本之前有什么?

function addScriptTag(src) {
    var node = document.getElementsByTagName("head")[0] || document.body;
    if(node){
        var script = document.createElement("script");
        script.type="text/javascript";
        script.src=src
        node.appendChild(script);
    } else {
        document.write("<script src='"+src+"' type='text/javascript'></script>");
    }
}

function parseScript(_source) {
    var source = _source;
    var scripts = source.match(/<script[^>]*src=[^>]*>/g);
    if (scripts) {
    for (var i = 0; i < scripts.length; i++) {
        src = scripts[i].match(/src=("([^"]*)"|'([^']*)')/);
        src = src[2] || src[3];
        if (src) {
            addScriptTag(src);
        }
    }
    }
    var scripts = new Array();

    return source;
}
4

1 回答 1

3

使用 window.onload 或 jquery $(document).ready 然后在里面调用这个函数?或者调用页面底部的函数。

于 2012-12-16T13:23:13.387 回答