loadjs异步加载javascript回调

function loadjs(url,callback){
    var script=document.createElement(‘script‘);
    script.type="text/javascript";
    script.src=url;
    if(script.onreadystatechange){
        script.onreadystatechange=function(){
            if(script.readyState=‘loaded‘||script.readyState=‘complate‘){
                callback();//script is loaded;
            }
        }
    }else{
        script.onloaded=function(){
            callback();//script is loaded;
        }
    }
    document.getElementsByTagName(‘head‘)[0].appendChild(script);
}
function callback(){
alert("script is loaded");
}
//window.onload之后才去加载的js,这样拆分js的加载有利于首页加载速度提高用户体验
window.onload=function(){
    loadjs("jquery.js",callback);
    loadjs("test.js",callback);
}

时间: 2024-10-11 05:11:10

loadjs异步加载javascript回调的相关文章

谈谈异步加载JavaScript

前言 关于JavaScript脚本加载的问题,相信大家碰到很多.主要在几个点—— 1> 同步脚本和异步脚本带来的文件加载.文件依赖及执行顺序问题 2> 同步脚本和异步脚本带来的性能优化问题 深入理解脚本加载相关的方方面面问题,不仅利于解决实际问题,更加利于对性能优化的把握并执行. 先看随便一个script标签代码—— <script src="js/myApp.js"></script> 如果放在<head>上面,会阻塞所有页面渲染工作,

关于异步加载的 javascript 不出现在 chrome 开发者工具的 source 中的解决方法

首先,当你看到这篇文章时,我相信你已经是一个中级甚至是高级的前端开发了. 因为异步加载 javascript 这样的做法,在一些中小型项目几乎是看不到的. 而异步加载 javascript 归根到底,是为了性能优化,防止 JS 加载造成页面阻塞. 会注意到性能,说明你已经不再是一个停留在实现层面的前端开发了,而是一个有着更高追求的人. 在此,向所有有追求的人点赞~~~ 昨天为公司的项目做前端优化,其中一项就是做脚本异步加载. 但是奇怪的是,异步加载的 js 出现在 chrome 开发者工具的 n

js回调与异步加载的用法

以前还是菜鸟的时候(虽然现在依然很菜 -_-|| )对异步加载与回调函数的技术无比向往,但也一直没有使用过,这次因为页面逻辑太过复杂,一堆请求逻辑,如果还是用顺序请求,页面的速度... 领导又要挠头了. 人是被逼出来的,所以去研究下异步与回调,以下只是本人自己见解啊,用来自己回忆的,不喜勿喷: 额...额...算了,打字好麻烦,直接上代码吧,又不是看不懂 getAlarmData(prov,function(arrAlarm){    console.log(arrAlarm);}); func

【Cocos2dx3.x Lua】图片异步加载

一.说明 异步加载就是把消耗程序时间比较大的加载操作放到其他线程中,待加载完毕后通过回调函数的方式通知主线程. addImageAsync函数实现(Cocos2dx 3.3) Link: http://codepad.org/UuNcXMqq    [ raw code | fork ]   void TextureCache::addImageAsync(const std::string &path, const std::function<void(Texture2D*)>&am

Javascript 文件的同步加载与异步加载

HTML 4.01 的script属性 charset: 可选.指定src引入代码的字符集,大多数浏览器忽略该值.defer: boolean, 可选.延迟脚本执行,相当于将script标签放入页面body标签的底部,js脚本会在document的DOMContentLoaded之前执行.除IE和较新版本的Firefox外,其他浏览器并未支持.language: 已废弃.大部分浏览器会忽略该值.src: 可选.指定引入的外部代码文件,不限制后缀名.type: 必选.指定脚本的内容类型(MIME类

26、首先通过javascript包的异步加载来学习echarts包的结构

1.在这里先写一写前言,今天在公司搞定了一个对于滚动条进行定位的case,明天开始做TestManagement. 首先大家先来一起看一看流行的javascript文件的加载方式,这里采用别人博客上的内容,因为自己也不会 前端模块化 (1)函数封装的缺点 直接在<script></script>中写function的方式 1 function fn1(){ 2 statement 3 } 4 5 function fn2(){ 6 statement 7 } 这种做法的缺点很明显:

实现异步加载js文件及加载完成后回调

模块化工具类实现方式 基于AMD.CMD模式的JS模块化管理工具越来越流行,这些工具通常只需在页面中加载对应的工具JS,其他JS文件都是异步加载的,比如RequireJS就可以象下面这样做. 首先在页面加载 <script data-main="scripts/main.js" src="scripts/require.js"></script> 然后工具会自动识别data-main属性值,并加载对应的JS文件,在main.js可以加载更多模

javascript 异步加载

javascript 异步加载 背景:公司使用新的统计埋点,由于弹层出现地方较多,新埋点方法未能及时压入common.js 所以需要自己引入阿里云上的埋点文件 问题1:在代码里输入 <script src="xxxx/xx.js"></script>` 后台直出到页面上==script==并未去请求js,导致代码报错 问题2:动态==异步==添加到dom中 由于是 异步的 导致 js 还没加载完 下面的埋点调用就开始执行了 js报onloginit undefi

javascript实现js脚本的的异步加载

javascript实现js脚本的的异步加载,和图片的异步加载稍有不同,script的异步加载需要借助dom,因此有了局限性 <html> <head> <meta charset="utf-8" /> <title>Javascript</title> <meta http-equiv="X-UA-Compatible" content="IE=7"> </head&