zoukankan      html  css  js  c++  java
  • DOM编程以及domReady加载的几种方式

    1,关于DOM编程
           DOM编程主要是对dom树节点进行操作,所以你必须掌握基本的节点类型,如何去获取节点名字以及值(这些相关知识你可以去网上查,这里推荐一个慕课学习网站->https://www.imooc.com/video/9491)。

    2 ,浏览器渲染过程

           解析html ,构建dom树(构建dom节点) -->  构建渲染树(加入css)-->布局渲染树(布局dom节点)-->绘制dom节点(绘制dom节点)

    3,domReady

          由于dom编程是对dom树进行操作的,所以加载外文件(js)最好的时间是在dom树加载完毕的时候就开始加载。一下是几种不同的加载方式对比。

         1)运用定时器方法

             在规定多长时间后进行加载  (缺点:不确定性,不知道dom树什么时候加载完毕,而且中间会有一个变化时间)

              具体方法 setTimeout(function(){},执行时间长短单位毫秒)

         2)运用window.onload = function(){};具体含义就是页面全部加载完成时再执行,初学js者一般使用的方法,缺点就是加载响应慢,因为要等所以资源加载完毕在运行代码,

             像一些图片资源加载速度过慢就会影响脚本的执行时间

          
         3) 最好的一种方法就是在dom加载完毕立即执行js,无需等待其他的资源加载

               第一: 如果支持DOMContentLoaded就是用它,但是对于较低版本的IE浏览器不支持怎么办了?当然就用著名的Hack兼容,兼容原理大概就是IE的                                        doucument.doucumentElement.doScorll('left')来判断DOM树是否创建完毕。

              第二:目前大量的前端框架都封装好了前面两种方法。如Jquery使用如下格式就行了:

                $(document).ready(function(){});

           

             上面是今天的分享,希望对你有帮助。   

              

            

     

            

            

             

            

        

  • 相关阅读:
    sqlserver查询数据的所有表名和行数
    java内存查看与分析
    jboss中JVM监控
    建设一个能承受500万PV/每天的网站如果计算?
    Java MVC框架性能比较
    struts1,struts2,springMVC终极对比
    struts2的action是线程安全的,struts1的action不是线程安全的真正原因
    浅析Struts1和Struts2的Action线程安全问题
    xml bug之cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration...
    eclipse调试web项目
  • 原文地址:https://www.cnblogs.com/lgnblog/p/9530987.html
Copyright © 2011-2022 走看看