美文网首页
jQuery $(document).ready 与 windo

jQuery $(document).ready 与 windo

作者: 字母数字或汉字 | 来源:发表于2016-08-04 16:10 被阅读22次

    原生和jQuery支持的页面加载完执行脚本的方式大概有如下三种:

    $(function(){ 
      $("#a").click(function(){ 
        //adding your code here 
      }); 
    });
    
    $(document).ready(function(){ 
      $("#a").click(function(){ 
        //adding your code here   
      }); 
    });
    
    window.onload = function(){ 
      $("#a").click(function(){ 
        //adding your code here 
      }); 
    }
    

    首先来看一看 window.onload 事件

    window.onload = function() { 
        $("table tr:nth-child(even)").addClass("even"); //这个是jquery代码 
    }; 
    

    这段代码会在整个页面的document全部加载完成以后执行。不幸的这种方式不仅要求页面的 DOM tree 全部加载完成,而且要求所有的外部图片和资源全部加载完成。更不幸的是,如果外部资源,例如图片需要很长时间来加载,那么这个体感上跟js失效了没什么区别。

    来看一看 jQuery 的方法

    $(document).ready(function() {
        // 任何需要执行的js效果
        $("table tr:nth-child(even)").addClass("even"); 
    }); 
    

    该方法有以下特点:
    **只需要DOM结构加载完,在浏览器把所有的HTML放入DOM tree之前就执行了js效果。包括在加载外部图片和资源之前。 **

    该用法还有一种简写的方式:

    $(function() { 
        // 任何需要执行的js效果
        $("table tr:nth-child(even)").addClass("even"); 
     });
    

    相关文章

      网友评论

          本文标题:jQuery $(document).ready 与 windo

          本文链接:https://www.haomeiwen.com/subject/bdncsttx.html