我们要异步地加载一个脚本时浏览器未提供一种通用的onload事件,
于是我们是否能够借用image的onload事件呢?
具体思路是这样的:
利用先创建一个图片用于加载脚本,因为它不是图片所有加载应当会出错,
于是在onerror中载入该脚本,因为此时脚本已被下载,可以从缓存中获取,可近似认为这是script的onload的事件。
此后即可编写依赖该脚本的代码了。
示例代码如下(未经测试- -)
var img = new Image;
img.onerror = function() {
var s = document.createElement('script'),
oldS = getElementsByTagName('script')[0];
s.src = img.src;
oldS.parentNode.insertBefore(s, oldS);
img = null;
}
不过不知道这种方法是否通用啊,大家有没有尝试过呢
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号