1.DOM document object model

  (1) 节点树状图:Document>documentElement>body>tagname

2.我们常用的节点类型

   元素节点(标签)

   文本节点(文本节点)

   属性节点(标签里的属性)

3.document有个属性叫nodeType 返回的是数字:

  1代表元素节点  2代表属性节点  3代表文本节点

4.节点的获取

  元素节点获取有很多方法:

    Document.getElementById()

    Document.getElementsByClassName()

    Document.getElementsByTagName()

    Document.querySelector()

    Document.querySelectorAll()

  属性节点的获取

    元素.attributes 获取元素身上所有属性构成的集合(数组)

    得到里面的值 元素.attributes[1].value

    元素.getAttribute(“属性名”) 获取属性值的方法

    元素.setAttribute(“属性名”,”属性值”)  给元素设置属性和属性值

    元素.removeAttribute(“属性”)  删除属性

    文本节点  没有获取的方法,没有意思

5.获取元素的子节点

  元素.childNodes  这个属性有兼容性 标准浏览器会获取到文本节点,而低版本浏览器不会。所以建议使用children这个属性。

    获取单个子节点

    获取第一个孩子

    标准下 元素.firstElementChild

    非标准下 元素.firstChild

兼容下写法

  var list=document.getElementById("list")

  var fist=list.firstElementChild||list.firstChild

  console.log(fist)

  获取最后一个子节点:

    元素.lastElementChild     元素.lastchild

  获取上一个兄弟节点:

    元素.previousSibling

    元素.previousElementSibling

  获取下一个兄弟节点:

    元素.nextSibling

    元素.nextElementSibling

6.获取父节点

  元素.parentNode  没有兼容性

  元素.parentNode.parentNode

  区分offsetParent和parentNode的区别

11-14 dom的更多相关文章

  1. JavaSE_ API常用对象 总目录(11~14)

    JavaSE学习总结第11天_开发工具 & API常用对象111.01 常见开发工具介绍11.02 Eclipse和MyEclipse的概述11.03 Eclipse的下载安装及卸载11.04 ...

  2. Intel Artificial Intelligence Conference(2018.11.14)

    时间:2018.11.14地点:北京国贸大酒店

  3. 第26次Scrum会议(11/14)【欢迎来怼】

    一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,阚博文 小组照片 二.开会信息 时间:2017/11/14 11:35~11:57,总计22min.地点:东北 ...

  4. Notes of Daily Scrum Meeting(11.14)

    Notes of Daily Scrum Meeting(11.14) 今天是项目第三周的周五,按原计划这时我们的项目应该已经要进入尾声进行组装调试了,但由于之前放假还有队员们的 效率比较低的原因,我 ...

  5. C++11/14笔记

    目录 语言层面 模板表达式中的空格 nullptr和std::nullptr_t 自动推导类型----auto 一致性初始化----Uniform Initialization 初始化列表(initi ...

  6. 基数排序的可复用实现(C++11/14/17/20)

    基数排序,是对整数类型的一种排序方法,有MSD (most significant digit)和LSD (least significant digit)两种.MSD将每个数按照高位分为若干个桶(按 ...

  7. javascript权威指南第11章 DOM扩展

    //javascript 权威指南 第三版 第11章 DOM扩展 //取得body元素 var body = document.querySelector("body"); //取 ...

  8. JZOJ 11.14 提高B组反思

    JZOJ 11.14 提高B组反思 T1 题目虽然有点高大上,但是很容易懂 有一个\(d\)维空间,同时有一个长度为\(2n\)的操作序列,每个操作往某一维的正方向或反方向走一格,问多少种方案使得最后 ...

  9. 2021.11.14 CF1583E Moment of Bloom(LCA+图上构造)

    2021.11.14 CF1583E Moment of Bloom(LCA+图上构造) https://www.luogu.com.cn/problem/CF1583E 题意: She does h ...

  10. 小白的python之路11/14

    视频69 固定命令的方式 1 vim /etc/profile 2 vim /etc/bashrc 3 vim /root/.bashrc 4 vim /root/.bash_profile 5 cd ...

随机推荐

  1. Git基础(四) 查看已暂存和未暂存的修改

    比较工作目录中当前文件和暂存区域快照之间的差异(也就是修改之后还没有暂存起来的变化内容) git diff 比较已暂存的将要添加到下次提交里的内容 git diff --cached Git 1.6. ...

  2. Git基础(一) 创建项目仓库

    一.取得Git项目仓库的两种方法: 在现有目录中初始化仓库 git init 如果是在一个已经存在文件的文件夹(而不是空文件夹)中初始化Git仓库来进行版本控制的话,应该跟踪这些文件并提交,通过git ...

  3. 提高VS项目的压缩文件大小

    对于.NET项目,如果将编译方式由Debug改为Release,使用压缩软件压缩项目文件时可以大大减少压缩文件的大小,具体原因待查.

  4. JavaScript学习:取数组中最大值和最小值

    在实际业务中有的时候要取出数组中的最大值或最小值.但在数组中并没有提供arr.max()和arr.min()这样的方法.那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最 ...

  5. ionic 3 安卓手机获取经纬度坐标

    现在有个需求:每隔一段时间需向后台服务器返回当前用户的经纬度坐标. ionic 官方提供的有定位插件cordova-plugin-geolocation,兼容ios和android版本,网上查资料说最 ...

  6. noip2017逛公园

    题解: 之前知道正解并没有写过.. #include <bits/stdc++.h> using namespace std; #define rint register int #def ...

  7. Linux 命令行敲命令 光标移动快捷键

    在单词之间跳转,使用Ctrl+左右键. Ctrl+a跳到本行的行首, Ctrl+e则跳到页尾. Ctrl+u删除当前光标前面的文字 ctrl+k-删除当前光标后面的文字 Ctrl+w和Alt+d-对于 ...

  8. 没有IDE的日子

    没有QT Creator,没有VS2008,没有Eclipse,也没有KDevelop,忘掉一切IDE. 好吧,现在我只有Vim了,可我跟Vim不熟. Vim魅力四射,光芒万丈,高高在上,她就是传说中 ...

  9. jenkins+ant配置自动化任务全过程

      UI自动化测试(17)  版权声明:本文为博主原创文章,未经博主允许不得转载. 1.首先,你需要写UI自动化测试,本地运行无误 2.利用ant将刚写好的程序运行起来,在Eclipse里边只需要ec ...

  10. 数据特征分析:3.统计分析 & 帕累托分析

    1.统计分析 统计指标对定量数据进行统计描述,常从集中趋势和离中趋势两个方面进行分析 集中趋势度量 / 离中趋势度量 One.集中趋势度量 指一组数据向某一中心靠拢的倾向,核心在于寻找数据的代表值或中 ...