动态载入JS&CSS
默认分类 2011-04-06 00:03:21
-
- function loadJS(url, onload) {
- var _loadJS = arguments.callee;
- if ( !! document && document.readyState && document.readyState == "complete") {
-
- var domscript = document.createElement('script');
- domscript.src = url;
- if ( !! onload) {
- domscript.afterLoad = onload;
- domscript.onreadystatechange = function() {
- if (domscript.readyState == "loaded" || domscript.readyState == "complete") {
- domscript.afterLoad();
- }
- }
- domscript.onload = function() {
- if ( !! domscript.afterLoad) domscript.afterLoad();
- }
- }
- document.getElementsByTagName('head')[0].appendChild(domscript);
- } else window.setTimeout(function() {_loadJS(url, onload)},1);
- }
- function loadCSS(url, onload) {
- var _loadCSS = arguments.callee;
- if ( !! document && document.readyState && document.readyState == "complete") {
-
- var html_doc = document.getElementsByTagName('head')[0];
- var domcss = document.createElement('link');
- domcss.setAttribute('rel', 'stylesheet');
- domcss.setAttribute('type', 'text/css');
- domcss.setAttribute('href', url);
- document.getElementsByTagName('head')[0].appendChild(domcss);
- domcss.id = 'dynamicCss' + (new Date).getTime();
-
- if ( !! onload) {
- domcss.afterLoad = onload;
- domcss.onreadystatechange = function() {
- if (domcss.readyState == "loaded" || domcss.readyState == "complete") {
- domcss.afterLoad();
- }
- }
- }
- if (!document.all) {
- domcss.poll = function() {
- try {
- var sheets = document.styleSheets;
- for (var j = 0, k = sheets.length; j < k; j++) {
- if (sheets[j].ownerNode.id == domcss.id) {
- sheets[j].cssRules;
- }
- }
- if ( !! domcss.afterLoad) domcss.afterLoad();
- } catch(e) {
- window.setTimeout(domcss.poll, 50);
- }
- }
- window.setTimeout(domcss.poll, 50);
- }
- } else window.setTimeout(function() {_loadCSS(url, onload)},1);
- }
-
>>
留言评论