DOM查询
  - 通过具体的元素节点来查询
  - 元素.getElementsByTagName()
  - 通过标签名查询当前元素的指定后代元素,返回数组

  - 元素.childNodes
  - 获取当前元素的所有子节点
  - 会获取到空白的文本子节点

  - 元素.children
  - 获取当前元素的所有子元素

  - 元素.firstChild
  - 获取当前元素的第一个子节点

  - 元素.lastChild
  - 获取当前元素的最后一个子节点

  - 元素.parentNode
  - 获取当前元素的父元素

  - 元素.previousSibling
  - 获取当前元素的前一个兄弟节点

  - 元素.nextSibling
  - 获取当前元素的后一个兄弟节点

innerHTML和innerText
  - 这两个属性并没有在DOM标准定义,但是大部分浏览器都支持这两个属性
  - 两个属性作用类似,都可以获取到标签内部的内容,
  不同是innerHTML会获取到html标签,而innerText会自动去除标签
  - 如果使用这两个属性来设置标签内部的内容时,没有任何区别的

读取标签内部的文本内容
  <h1>h1中的文本内容</h1>
  元素.firstChild.nodeValue

  - document对象的其他的属性和方法
  document.all
  - 获取页面中的所有元素,相当于document.getElementsByTagName("*");

  document.documentElement
  - 获取页面中html根元素

  document.body
  - 获取页面中的body元素

 <script>
//var body = document.getElementsByTagName("body")[0];
var body = document.body;//body标签
var html = document.documentElement;//html跟标签
var all = document.all;//所有标签
all = document.getElementsByTagName("*");//与all一样的 console.log(all.length);
for(var i=0; i<all.length; i++){
console.log(all[i]);
}
var box1 = document.getElementsByClassName("box1");//支持IE9以上
console.log(box1.length);
</script>

  document.getElementsByClassName()
  - 根据元素的class属性值查询一组元素节点对象
  - 这个方法不支持IE8及以下的浏览器

<script>
var box1 = document.getElementsByClassName("box1");//支持IE9以上
console.log(box1.length);
</script>

  document.querySelector()
  - 根据CSS选择器去页面中查询一个元素
  - 如果匹配到的元素有多个,则它会返回查询到的第一个元素

<script>
//querySelector(".box1 div")
//需要一个选择器的字符串作为参数,可以根据一个CSS选择器来查询一个元素节点对象
//IE8以上可用,可以用来代替getElementsByClassName()方法
//总会返回唯一一个,如果有多个,只返回第一个
var div = document.querySelector(".box1 div");
console.log(div.innerText);
</script>

  document.querySelectorAll()
  - 根据CSS选择器去页面中查询一组元素
  - 会将匹配到所有元素封装到一个数组中返回,即使只匹配到一个

<script>
//返回数组
var divs = document.querySelectorAll(".box1 div");
console.log(divs.length);
</script>

JavaScript之DOM查询的更多相关文章

  1. JavaScript中DOM查询封装函数

    在JavaScript中可以通过BOM查询html文档中的元素,也就是所谓的在html中获取对象然后对它添加一个函数. 常用的方法有以下几种: ①document.getElementById() 通 ...

  2. javascript --- javascript与DOM

    javascript与DOM: 我们来个例子,一个HTML里包含一段文本和一个无序的列表. <p id="intro">My first paragraph...< ...

  3. JavaScript与DOM

    文档对象模型Document Object Model DOM(Document Object Model,文档对象模型)是一个通过和JavaScript进行内容交互的API.Javascript和D ...

  4. JavaScript 操作 DOM 常用 API 总结

    文本整理了javascript操作DOM的一些常用的api,根据其作用整理成为创建,修改,查询等多种类型的api,主要用于复习基础知识,加深对原生js的认识. 基本概念 在讲解操作DOM的api之前, ...

  5. 使用原生 JavaScript 操作 DOM

    原文:https://www.sitepoint.com/dom-manipulation-vanilla-javascript-no-jquery/ 微软官方放弃了 IE10-,所以现在可以放心使用 ...

  6. Javascript的DOM总结

    Javascript的DOM总结 DOM DOM 是 W3C(万维网联盟)的标准.DOM 定义了访问 HTML 和 XML 文档的标准: "W3C 文档对象模型(DOM)是中立于平台和语言的 ...

  7. 高性能Javascript(2) DOM编程

    第三部分 DOM编程 文档对象模型(DOM)是一个独立于语言的,使用XML和HTML文档操作的应用程序接口(API).在浏览器中,主要与HTML文档打交道,在网页应用中检索XML文档也很常见.DOM ...

  8. 【repost】Javascript操作DOM常用API总结

    Javascript操作DOM常用API总结 文本整理了javascript操作DOM的一些常用的api,根据其作用整理成为创建,修改,查询等多种类型的api,主要用于复习基础知识,加深对原生js的认 ...

  9. 深入理解JavaScript系列(23):JavaScript与DOM(上)——也适用于新手

    文档对象模型Document Object Model DOM(Document Object Model,文档对象模型)是一个通过和JavaScript进行内容交互的API. Javascript和 ...

随机推荐

  1. 使用 yield生成迭代对象函数

    https://www.cnblogs.com/python-life/articles/4549996.html https://www.liaoxuefeng.com/wiki/001431608 ...

  2. HDU2054:A == B ?

    A == B ? Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  3. 织梦Dedecms主要文件夹目录及模板文件说明

    虽然织梦DedeCMS因为安全问题被人所诟病,但瑕不掩瑜,无论从用户群数量还是时间等各方面,织梦DedeCMS都是国内排名前几的CMS建站程序.如果你想学习CMS的二次开发,织梦DedeCMS是必须需 ...

  4. Oracle10g使用$ORACLE_HOME/rdbms/admin/awrrpt.sql报错

    Enter value for report_name: Using the report name awrrpt_1_591_593.htmlselect output from table(dbm ...

  5. 数据结构与算法分析java——树1

    1. 基本术语 度(degree):一个节点的子树个数称为该节点的度: 树中结点度的最大值称为该树的度. 层数(level):从根结点开始算,根节点为1 高度(height)/深度(depth):节点 ...

  6. 使用SAPGUI画图

    国内80后上的编程课应该都学过Logo这门编程语言: Logo语言是一门专门设计用来进行编程教学的语言,于1967年由Wally Feurzeig, Seymour Papert和Cynthia So ...

  7. 2018.9.17 面试问题-----如何对List集合中的元素进行排序?

    Collections对List集合中的数据进行排序 有时候需要对集合中的元素按照一定的规则进行排序,这就需要用到 Java中提供的对集合进行操作的工具类Collections,其中的sort方法 先 ...

  8. 超简单,快速修改Oracle10g的默认8080端口

    因为Oracle数据库默认的端口是8080,这也是tomcat服务器的默认端口. 为了避免端口冲突,我们通常会修改掉其中一个. 这里我们选择修改Oracle数据库的端口. 第一步:以管理员身份运行cm ...

  9. spring 跨域 CORS (Cross Origin Resources Share) 跨域

    Spring提供了三种方式跨域 1.CorsFilter 过滤器 2.<mvc:cors> Bean(全局,推荐使用) 3.@CrossOrigin注解 以上三种方式本质都是用来配置Cor ...

  10. Node.js 笔记02

    一.关于命令 常用命令: dir 列出当前目录下面所有的文件 cd 目录名 进入到指定的目录,. 当前目录, .. 进入上级目录,cd . 当前目录, cd .. 上级目录 md 目录名 创建文件夹 ...