zoukankan      html  css  js  c++  java
  • DOM操作

    DOM操作

    一、DOM查找

    1.按照id属性,精确查找一个元素对象

    var elem = document.getElementById("id");
    

    2.按照标签名查找

    var elem = parent.getElementsByTagName("tag"); // parent为节点对象,下同
    

    查找指定parent节点下的所有标签为tag的子代节点。

    3.通过name属性查找

    var elem = document.getElementByName("name");
    

    4.通过class查找

    var elem = parent.getElementsByClassName("class");
    

    5.使用CSS选择器查找

    var elem = parent.querySelector("selector"); //查找一个元素
    var elem = parent.querySelectorAll("selector"); //查找多个元素
    

    二、DOM修改属性

    1核心DOM

    • 读取属性值
    // 读取属性值
    var attrNode = elem.attributes[下标/属性名];
    var attrNode = elem.getAttributeNode("属性名");
    
    var value = elem.getAttribute("属性名");
    
    • 修改属性名
    var elem = document.getElementById("id");
    elem.setAttribute("属性名", value);
    
    • 判断是否含有属性名
    var bool = elem.hasAttribute("属性名");
    
    • 删除属性名
    elem.removeAttribute("属性名");
    
    • 修改样式
    elem.style.backgroundColor = "red";
    

    三、DOM添加

    1.添加元素的步骤

    • 创建空元素
    • 设置关键属性
    • 将元素添加到DOM树
    // 创建空元素
    var elem = document.createElement("元素名");
    
    // 设置关键属性
    elem.innerHTML = "一段文字";
    elem.href = "https://baidu.com";
    // 设置关键样式
    elem.style.opacity = 1; // 设置单个样式
    elem.style.cssText = " 100px; height: 100px"; // 设置多个样式
    
    // 将元素添加到DOM树
    parentNode.appendChild(elem);
    // 方式二 在指定存在节点前添加新节点
    parentNode.insertBefore(newChild, existingChild);
    

    2.添加元素优化

    var frag = document.createDocumentFragment();
    frag.appendChild(elems);
    parentNode.appendChild(frag);
    
  • 相关阅读:
    二维数组
    ASCII_02_扩展
    ASCII_01
    【转】如何监控某个驱动器或目录及其下面的所有子目录的创建文件的动作
    webpack+vue2.0项目 (一) vue-cli脚手架
    分享两个常用的rem布局方式
    移动端border:1px问题解决方案
    sticky footer 布局
    用js数组实现最原始的图片轮播实现
    分享按钮(QQ,微信,微博等)移入动画效果
  • 原文地址:https://www.cnblogs.com/lbr12218/p/14609042.html
Copyright © 2011-2022 走看看