这篇文章主要介绍了异步安全加载javascript文件的方法,实例分析了javascript实现文件异步加载的具体技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了异步安全加载javascript文件的方法。分享给大家供大家参考。具体如下:
使用方法:
- (function() {
- __safeLoadScript("http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js", function() {
- alert(jQuery);
- });
- })();
JavaScript实现代码:
- window.__safeLoadScript = function(src, callback) {
- function addEvent(obj, type, fn) {
- if (obj.attachEvent) {
- obj['e' + type + fn] = fn;
- obj[type + fn] = function() { obj['e' + type + fn](window.event); }
- obj.attachEvent('on' + type, obj[type + fn]);
- } else
- obj.addEventListener(type, fn, false);
- }
- function async_load(src, callback) {
- var s = document.createElement('script');
- s.type = 'text/javascript';
- s.async = true;
- var protocol = (("https:" == document.location.protocol) ? "https://" : "http://");
- s.src = protocol + src;
- var x = document.getElementsByTagName('script')[0];
- x.parentNode.insertBefore(s, x);
- s.onload = s.onreadystatechange = function() {
- if(callback && (!this.readyState || this.readyState == "loaded" || this.readyState == "complete")) {
- callback();
- }
- };
- }
- addEvent(window, "load", function() {
- async_load(src, callback);
- });
- };
希望本文所述对大家的javascript程序设计有所帮助。
新闻热点
疑难解答
图片精选