检测标记添加到页面后是否加载了javascript文件

时间:2011-05-09 13:37:36

标签: javascript load

我是否可以(使用javascript)检测是否已加载javascript文件,如果没有,则添加onload处理程序?脚本标记由第三方库动态添加,因此我无法自己动态插入它。

1 个答案:

答案 0 :(得分:1)

这是一个丑陋的解决方案,但可能:

function thirdPartyLoaded() {
  // here we will have code, that will be executed,
  // when 3rd party script will be loaded
}

// Also we know, that 3rd party have some global object or function
// Let it be IAm3dPartyFunc for example

// Then we somewhere add continuos watcher function with setInterval
var watchFor3rd = setInterval(function(){
    if (undefined != IAm3dPartyFunc) {
        thirdPartyLoaded();
        clearInterval(watchFor3rd);
    }
}, 500);

每500ms(0.5秒)调用此函数,如果我们有一些全局对象/函数,将检查第三方可以拥有的函数。但是如果第三方是由真正的gosu制作的,那么它就没有任何全局性的东西,因为所有的工作都可以在一些匿名函数中,这个解决方案将无法工作。

您应该说明您想要使用哪个第三方以及何时使用。