• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
睫毛
博客园    首页    新随笔    联系   管理    订阅  订阅
[转载] javascript的domReady-类$(document).ready(function()使用方法

javascript的domReady-类$(document).ready(function()使用方法

 1     new function(){  
 2       dom = [];  
 3       dom.isReady = false;  
 4       dom.isFunction = function(obj){  
 5         return Object.prototype.toString.call(obj) === "[object Function]";  
 6       }  
 7       dom.Ready = function(fn){  
 8         dom.initReady();//如果没有建成DOM树,则走第二步,存储起来一起杀  
 9         if(dom.isFunction(fn)){  
10           if(dom.isReady){  
11             fn();//如果已经建成DOM,则来一个杀一个  
12           }else{  
13             dom.push(fn);//存储加载事件  
14           }  
15         }  
16       }  
17       dom.fireReady =function(){  
18         if (dom.isReady)  return;  
19         dom.isReady = true;  
20         for(var i=0,n=dom.length;i<n;i++){  
21           var fn = dom[i];  
22           fn();  
23         }  
24         dom.length = 0;//清空事件  
25       }  
26       dom.initReady = function(){  
27         if (document.addEventListener) {  
28           document.addEventListener( "DOMContentLoaded", function(){  
29             document.removeEventListener( "DOMContentLoaded", arguments.callee, false );//清除加载函数  
30             dom.fireReady();  
31           }, false );  
32         }else{  
33           if (document.getElementById) {  
34             document.write("<script id=\"ie-domReady\" defer='defer'src=\"//:\"><\/script>");  
35             document.getElementById("ie-domReady").onreadystatechange = function() {  
36               if (this.readyState === "complete") {  
37                 dom.fireReady();  
38                 this.onreadystatechange = null;  
39                 this.parentNode.removeChild(this)  
40               }  
41             };  
42           }  
43         }  
44       }  
45     }  

 

使用方法:

 1  dom.Ready(function(){  
 2    alert("我的domReady!")  
 3  });  
 4  dom.Ready(function(){  
 5    alert("我的domReady测试多重加载1!")  
 6  });  
 7  dom.Ready(function(){  
 8     alert("我的domReady测试多重加载2!")  
 9  });  
10  dom.Ready(function(){  
11    alert(document.getElementById("test").innerHTML)  
12  });  
posted on 2012-08-07 17:40  睫毛  阅读(372)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3