zoukankan      html  css  js  c++  java
  • 总结获取原生JS(javascript)基本操作

    var a = document.getElementByIdx_x_x("dom");
    jsCopy(a);//调用清理空格的函数
    var b = a.childNodes;//获取a的全部子节点;
    var c = a.parentNode;//获取a的父节点;
    var d = a.nextSibling;//获取a的下一个兄弟节点
    var e = a.previousSibling;//获取a的上一个兄弟节点
    var f = a.firstChild;//获取a的第一个子节点
    var g = a.lastChild;//获取a的最后一个子节点

    Element,元素
    Attribute,属性
    Text,文本
    DOM节点创建最常用的便是document.createElement和document.createTextNode方法:

    var el1 = document.createElement('div');
    var el2 = document.createElement('input');
    var node = document.createTextNode('hello world!');
    DOM 查询
    元素查询的API返回的的结果是DOM节点或者DOM节点的列表。document提供了两种Query方法:

    // 返回当前文档中第一个类名为 "myclass" 的元素
    var el = document.querySelector(".myclass");

    // 返回一个文档中所有的class为"note"或者 "alert"的div元素
    var els = document.querySelectorAll("div.note, div.alert");

    // 获取元素
    var el = document.getElementById('xxx');
    var els = document.getElementsByClassName('highlight');
    var els = document.getElementsByTagName('td');
    Element也提供了很多相对于元素的DOM导航方法:

    // 获取父元素、父节点
    var parent = ele.parentElement;
    var parent = ele.parentNode;

    // 获取子节点,子节点可以是任何一种节点,可以通过nodeType来判断
    var nodes = ele.children;

    // 查询子元素
    var els = ele.getElementsByTagName('td');
    var els = ele.getElementsByClassName('highlight');

    // 当前元素的第一个/最后一个子元素节点
    var el = ele.firstElementChild;
    var el = ele.lastElementChild;

    // 下一个/上一个兄弟元素节点
    var el = ele.nextElementSibling;
    var el = ele.previousElementSibling;
    DOM 更改
    // 添加、删除子元素
    ele.appendChild(el);
    ele.removeChild(el);

    // 替换子元素
    ele.replaceChild(el1, el2);

    // 插入子元素
    parentElement.insertBefore(newElement, referenceElement);
    属性操作
    // 获取一个{name, value}的数组
    var attrs = el.attributes;

    // 获取、设置属性
    var c = el.getAttribute('class');
    el.setAttribute('class', 'highlight');

    // 判断、移除属性
    el.hasAttribute('class');
    el.removeAttribute('class');

    // 是否有属性设置
    el.hasAttributes();

  • 相关阅读:
    核心数据类型
    Python入门
    [多校联考2019(Round 4 T2)][51nod 1288]汽油补给(ST表+单调栈)
    [Codeforces 1228E]Another Filling the Grid (排列组合+容斥原理)
    [luogu5339] [TJOI2019]唱、跳、rap和篮球(容斥原理+组合数学)(不用NTT)
    用生成函数推导数列的通项公式
    [Luogu 5465] [LOJ 6435] [PKUSC2018]星际穿越(倍增)
    [BZOJ4569] [Luogu 3295] [SCOI2016]萌萌哒(并查集+倍增)
    [BZOJ4444] [Luogu 4155] [LOJ 2007] [SCOI2015]国旗计划(倍增)
    倍增好题记录
  • 原文地址:https://www.cnblogs.com/web-chuanfa/p/9129194.html
Copyright © 2011-2022 走看看