国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

動態加載js、css的實例代碼

2019-11-20 09:54:38
字體:
來源:轉載
供稿:網友

一、原生js:

/*** 加載js和css文件* @param jsonData.path 前綴路徑* @param jsonData.url 需要加載的js路徑或css路徑* @param jsonData.type 需要加載的類型 js或css*/function loadWriteFiles(jsonData){jsonData.path = jsonData.path != undefined ? jsonData.path : "";if(jsonData.type == "js"){document.writeln("<script type='text/javascript' src='"+ jsonData.path + jsonData.url+"'></script>");}else if(jsonData.type == "css"){document.writeln("<link rel='stylesheet' href='"+jsonData.path + jsonData.url+"' type='text/css' />");}}/*** 加載js或css到head中* @param jsonData.path 前綴路徑* @param jsonData.url 需要加載的js路徑或css路徑* @param jsonData.type 需要加載的類型 js或css*/function loadFilesToHead(jsonData){jsonData.path = jsonData.path != undefined ? jsonData.path : "";if(jsonData.type == "js"){var _js = document.createElement("script");_js.setAttribute("type", "text/javascript");_js.setAttribute("src", jsonData.path + jsonData.url);_js.onload = _js.onreadystatechange=function(){ if(!this.readyState||this.readyState=='loaded'||this.readyState=='complete'){ if("function" == typeof(jsonData["callback"]) && jsonData["callback"]){jsonData["callback"].call(this);}} _js.onload=_js.onreadystatechange=null; } document.getElementsByTagName("head")[].appendChild(_js);//追加到head標簽內}else if(jsonData.type == "css"){var _css = document.createElement("link");_js.setAttribute("type", "text/css");_css.setAttribute("rel", "stylesheet");_css.setAttribute("href", jsonData.path + jsonData.url);document.getElementsByTagName("head")[].appendChild(_css);//追加到head標簽內}} 

二、jquery版本:

采用deferred對象返回結果

var uiLoad = uiLoad || {};(function($, $document, uiLoad) {"use strict";var loaded = [],promise = false,deferred = $.Deferred();uiLoad.load = function (srcs) {srcs = $.isArray(srcs) ? srcs : srcs.split(//s+/);if(!promise){promise = deferred.promise();}$.each(srcs, function(index, src) {promise = promise.then( function(){return src.indexOf('.css') >= ? loadCSS(src) : loadScript(src);} );});deferred.resolve();return promise;};var loadScript = function (src) {if(loaded[src]) return loaded[src].promise();var deferred = $.Deferred();var script = $document.createElement('script');script.src = src;script.onload = function (e) {deferred.resolve(e);};script.onerror = function (e) {deferred.reject(e);};$document.body.appendChild(script);loaded[src] = deferred;return deferred.promise();};var loadCSS = function (href) {if(loaded[href]) return loaded[href].promise();var deferred = $.Deferred();var style = $document.createElement('link');style.rel = 'stylesheet';style.type = 'text/css';style.href = href;style.onload = function (e) {deferred.resolve(e);};style.onerror = function (e) {deferred.reject(e);};$document.head.appendChild(style);loaded[href] = deferred;return deferred.promise();}})(jQuery, document, uiLoad);

以上所述是小編給大家介紹的動態加載js、css的實例代碼,希望對大家有所幫助!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 枝江市| 鄂托克前旗| 合山市| 南华县| 高台县| 简阳市| 文成县| 乌鲁木齐县| 丽水市| 沾益县| 黑龙江省| 抚顺县| 七台河市| 区。| 察隅县| 龙南县| 三门峡市| 夏河县| 娱乐| 虎林市| 安乡县| 郓城县| 漯河市| 芦溪县| 辽宁省| 伊宁县| 霍城县| 山东省| 蛟河市| 西城区| 宿迁市| 凤阳县| 宜阳县| 县级市| 巍山| 九台市| 蒲江县| 荥阳市| 东阿县| 万年县| 江达县|