美文网首页前端JavaScript
复习笔记之API(4) 三种动态创建元素的区别&&总结DOM重点

复习笔记之API(4) 三种动态创建元素的区别&&总结DOM重点

作者: 晚月川 | 来源:发表于2020-04-14 23:23 被阅读0次

    三种动态创建元素的区别

    • document.write()
    • element.innerHTML
    • document.createElement()
    <button>点击</button>
    <p>123</p>
    <script>
        // document.write() 创建元素 (如果页面加载完毕,在调用这句话会导致页面重绘)
        let btn = document.querySelector('button');
        btn.onclick = function() {
            document.write('<div>57</div>');
        }
        // btn.onload = function() {
        //     document.write('<div>57</div>');
        // }
    </script>
    
    • document.write()是直接将内容写入到页面的内容流,如果页面加载完毕,在调用这句话会导致页面重绘
    • element.innerHTML是将内容写入某个DOM节点,不会导致页面全部重绘
      • 创建多个元素效率更高(不要拼接字符串,采用数组形式拼接),解构稍微复杂
    • document.createElement()创建多个元素效率稍低一点,但是结构更加清晰

    不同浏览器下,innerHTML效率要比createElement

    下面的内容是前面的总结

    DOM重点核心

    文档对象模型(DocumentObjectModel,简称DOM),是W3C组织推荐的处理可扩展标记语言(HTML或XML)的标准编程接口

    • W3C已经定义了一系列的DOM接口,通过这些DOM接口可以改变网页的内容、结构和样式
      • 对于JavaScript,为了能够使JavaScript操作HTML,JavaScript就有了一套自己的DOM编程接口chengyikeDOMshu
      • 对于HTML,DOM使得html形成一颗DOM树,包含文档、元素、节点
        利用DOM获取的元素都是一个对象(object),所以称为文档对象模型

    关于DOM操作,主要针对元素操作,主要有创建、增、删、改、查、属性操作、事件操作。

    • 创建:document.write()innerHTMLcreateElement
    • 增:appendChildinsertBefore
    • 删:removeChild
    • 改:主要修改DOM元素属性
      • 修改元素属性:srchreftitle
      • 修改普通元素内容:innerHTMLinnerText
      • 修改表单元素:valuetypedisabled
      • 修改元素样式:styleclassName
    • 查:主要获取查询DOM的元素
      • DOM提供的API方法:getElementByIdgetElementsByTagName
      • H5提供的新方法:querySelectorquerySelectorAll
      • 利用节点操作获取元素:父(parentNode)、子(children)、兄(previousElementSibling)、弟(nextElementSibling)
    • 属性操作:主要针对于自定义属性
      • setAttribute设置DOM的属性值
      • getAttribute得到DOM的属性值
      • removeAttribute移除属性
    • 事件操作
      • 给元素绑定事件:采取事件源.事件类型=事件处理程序
    鼠标事件 触发条件
    onclick 鼠标点击左键触发
    onmouseover 鼠标经过触发
    onmouseout 鼠标离开触发
    onfocus 获得鼠标焦点触发
    onblur 失去鼠标焦点触发
    onmousemove 鼠标移动触发
    onmouseup 鼠标弹起触发
    onmousedown 鼠标按下触发

    相关文章

      网友评论

        本文标题:复习笔记之API(4) 三种动态创建元素的区别&&总结DOM重点

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