您的位置:首页 > Web前端 > JQuery

模拟jQuery中的ready方法及实现按需加载css,js实例代码

2013-09-27 16:18 1021 查看
// css按需加载function loadCss (cssUrl, callback) {    var elem, bl,        isExecuted = false; // 防止在ie9中,callback执行两次    if ( cssUrl == null ) {        return String(cssUrl);    }    elem = document.createElement('link'),    elem.rel = 'stylesheet';    if ( type(callback) === 'function' )  {        bl = true;    }    // for ie    function handle() {        if ( elem.readyState === 'loaded' || elem.readyState === 'complete' ) {            if (bl && !isExecuted) {                callback();                isExecuted = true;            }            elem.onreadystatechange = null;        }    }    elem.onreadystatechange = handle;    // for 非ie    if (bl && !isExecuted) {        elem.onload = callback;        isExecuted = true;    }    elem.href = cssUrl;    document.getElementsByTagName('head')[0].appendChild(elem);}// js按需加载function loadScript(scriptUrl, callback) {    var elem, bl,        isExecuted = false; // 防止在ie9中,callback执行两次    if (scriptUrl == null) {        return String(fn);    }    elem = document.createElement('script');    if ( type(callback) === 'function' )  {        bl = true;    }    // for ie    function handle(){        var status = elem.readyState;        if (status === 'loaded' || status === 'complete') {            if (bl && !isExecuted) {                callback();                isExecuted = true;            }            elem.onreadystatechange = null;        }    }    elem.onreadystatechange = handle;    // for 非ie    if (bl && !isExecuted) {        elem.onload = callback;        isExecuted = true;    }    elem.src = scriptUrl;    document.getElementsByTagName('head')[0].appendChild(elem);}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jQuery css js