【发布时间】:2011-07-18 06:56:09
【问题描述】:
我有一个延迟加载的 JavaScript 文件,当文件中的类准备好使用时,如何捕获事件?我只需要在特定情况下加载此脚本。因此它不是通过 onload 而是在 if 子句中加载的。
我从这里获取的延迟加载代码:http://friendlybit.com/js/lazy-loading-asyncronous-javascript/
if (externalClassRequired) {
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'http://yourdomain.com/script.js';
var x = document.getElementsByTagName('script')[0]
x.parentNode.insertBefore(s, x);
// When do I know when the class named "geo" is available?
}
更新:
对不起,伙计们,我完全忘记了阿贾克斯! :) 我非常专注于我的问题,以至于我没有看到@Tokimon 的明显解决方案。通过 jQuery 最简单的解决方案是:
$.getScript('http://yourdomain.com/script.js', function() {
// callback or use the class directly
});
【问题讨论】:
标签: javascript events