武汉web培训
达内武汉中心

15827352908

热门课程

还原jquery页面加载时所触发的函数$(function(){});

  • 时间:2016-05-26 14:48
  • 发布:web前端网
  • 来源:web前端网

jquery的加载函数是$(function(){   //内容 });  js的加载函数是window.onload=function(){};
区别:
1.js方式的加载优先级优于jquery形式的。
2.$(function(){ });可写多个,每个的内容都会执行,window.onload=function(){};也可以写多个,但只执行页面中最后一个
Demo:
  funtion domReady(f){
      //用done属性来判断DOM是否已经加载完毕,如果加载完毕就马上执行传进来的函数
        if(domReady.done){return f();}
       
        if(domReady.timer){//表示原来至少有一个函数存在
            domReady.ready.push(f);//将这些函数存到一个数组里面,也是为了实现区别2所说的。
       }
        else {
             window.onload=isDOMReady;
             domReady.ready=[f];
             domReady.timer=setInterval(isDOMReady,13);//不断的检查
        }
   } 
   function isDOMReady(){
        if(domReady.done){return false;}//dom已经可以用了
      //检查这些函数与元素是否可以使用
        if(document && document.getElementsByTagName && document.getElementById &&document.body){
           clearInterval(domReady.timer);
            domReady.timer=null;
           //执行所有正在等待的函数
           for(var i=0,l=domReady.ready.length;i<l;i++)
          {
                   domReady.ready[i]();
          }
          domReady.ready=null;
          domReady.done=true;
        }
   }
 
上一篇:使用jquery实现简单的拖动效果
下一篇:js判断不同类型的浏览器

web前端学习容易犯的错误

web1702“诱人”活动

抽象类和抽象方法

jquery的ajax和getJson跨域获取json数据

选择城市和中心
贵州省

广西省

海南省

有位老师想和您聊一聊