• 学习感悟3


    继续学习。。

    1.Dom操作节点

    (1)appendChild()向childnodes列表添加一个节点

    var returnNode = someNode.appendChild(newNode);
    

    (2)insertBefore接受两个参数,要插入的节点和参照节点,如果参照节点为null,则功能和appendChild()一样

    var returnNode = someNode.insertBefore(newNode,null);
    

    (3)replaceChild接受两个参数,要插入的节点和要替换的节点

    var returnNode = someNode.replacechild(newNode,someNode.firstChild);
    

    (4)removeChild移除节点

    var returnNode = someNode.removeChild(someNode.firstNode);
    

    2.查找元素

    (1)getElementById根据id查找元素

    (2)getElementByTagName根据元素标签名查找元素

    (3)namedItem根据name属性查找元素

    (4)getElementByName根据name查找元素

    (5)getElementByClassName根据class来查找元素

    (6)等等。。

    3.取得特性

    (1)取得特性

    var div = document.getElementById("id");
    alert(getAttribute("id"));
    alert(getAttribute("class"));
    alert(getAttribute("name"));
    alert(getAttribute("title"));
    alert(getAttribute("lang"));
    alert(getAttribute("dir"));
    

    (2)设置特性

    setAttribute("id","id");

    (3)删除特性

    removeAttribute("class");

    4.兼容模式

    if(document.compatMode == "CSS1Compat"){
        alert("standards mode");//标准模式
    }else {
        alert("quirks mode");混杂模式
    }
    

    5.事件流

    IE的事件流是事件冒泡流,而Netscape的事件流是事件捕获流,正好相反,由于老版本浏览器不支持,所以现在很少有人使用事件捕获流

    事件处理被看做发生在事件冒泡阶段

    Dom2级事件处理程序:addEventListener()和removeEventListener()

    addEventListener()接受三个参数,要处理的事件名、处理程序的函数、布尔值,如果布尔值为true,则该事件会在捕获阶段被触发,如果为false,则会在冒泡阶段被触发

    IE事件处理程序则会不同,使用attachEvent()和detachEvent(),与使用dom0的区别在于处理事件的作用域,使用attachEvent作用域会在全局作用域运行,事件处理程序都会在冒泡阶段运行,接受两个参数

    stopPropagation()方法会阻止程序冒泡

  • 相关阅读:
    Codeforces Round #541 (Div. 2) D 并查集 + 拓扑排序
    Educational Codeforces Round 60 D dp + 矩阵快速幂
    Educational Codeforces Round 60 C 思维 + 二分
    Codeforces Round #544 (Div. 3) dp + 双指针
    Codeforces Round #542(Div. 2) CDE 思维场
    UVA
    UVA
    UVA
    UVA
    UVA
  • 原文地址:https://www.cnblogs.com/yanwei-sun/p/5236606.html
Copyright © 2020-2023  润新知