DOM选择器之元素节点选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div id="box">1</div>
<div id="box">2</div>
<div id="box">3</div>
<div class="msg">
<div class="sbox">
<h2>三级标题</h2>
<h2>三级标题</h2>
</div>
<h2>二级标题</h2>
<h2>二级标题</h2>
</div>
<div class="cont">4</div>
<div class="cont">5</div>
<div class="cont">6</div>
<span>5</span>
<span><em>hello</em></span>
<span>9</span>
<input type="text" name="user" value="你好">
<input type="text" name="user">
<input type="text" name="pass">
</body>
<script> // 选择器:
// 元素节点选择器:
// id,class,name,tagname,高级,关系 // id:返回的是单个对象
var box = document.getElementById("box");
console.log(box) //<div id="box">1</div>
// class:返回的是数组对象,如果要使用其中的元素,通过索引解析
var acont = document.getElementsByClassName("cont")
console.log(acont)//[div.cont, div.cont, div.cont]
console.log(acont[0])//<div class="cont">4</div> ,返回数组中的单个对象
console.log(acont[0].innerHTML)//4 返回数组中的单个对象中的值
console.log(acont.innerHTML) //undefined
// tagname:返回的是数组对象,如果要使用其中的元素,通过索引解析
var aspan = document.getElementsByTagName("span")
console.log(aspan) // [span, span, span],第二个span中有元素,但是在数组只显示一个span
// name:返回的是数组对象,如果要使用其中的元素,通过索引解析
var auser=document.getElementsByName("user")
console.log(auser) //[input, input]
console.log(auser[0])//<input type="text" name="user">
console.log(auser[0].value)//你好
// 高级:ES5新增的
// querySelector:返回的是单个对象
var a = document.querySelector("#box")
console.log(a) //<div id="box">1</div>
var b=document.querySelector(".msg")
console.log(b)//<div class="msg"><div class="sbox"><h2>二级标题</h2><h2>二级标题</h2></div><h2>二级标题</h2><h2>二级标题</h2></div>
var ele = document.querySelector("span")
console.log(ele)//<span>5</span>
var ele = document.querySelector(".msg h2")
console.log(ele)//<h2>三级标题</h2>
var ele = document.querySelector(".msg>h2")
console.log(ele)//<h2>二级标题</h2>
// querySelectorAll:返回的是数组对象,如果要使用其中的元素,通过索引解析
var ele = document.querySelectorAll("#box") //[div#box, div#box, div#box]
var ele = document.querySelectorAll(".cont")// [div.cont, div.cont, div.cont]
var ele = document.querySelectorAll("span") //[span, span, span]
var ele = document.querySelectorAll(".msg h2")//[h2, h2, h2, h2]
var ele = document.querySelectorAll(".msg>h2")//[h2, h2]
console.log(ele) // 关系:
// 父选子,返回的是数组对象
var omsg = document.querySelector(".msg");
console.log(omsg.children);//[div.sbox, h2, h2]
// 子选父,返回的是单个对象
var osbox = document.querySelector(".sbox");
console.log(osbox.parentNode);//<div class="msg"><div class="sbox"><h2>三级标题</h2><h2>三级标题</h2></div><h2>二级标题</h2><h2>二级标题</h2></div>
// 第一个子,返回的是单个对象
var omsg = document.querySelector(".msg");
console.log(omsg.firstElementChild) //<div class="sbox"><h2>三级标题</h2><h2>三级标题</h2></div>
// 最后一个子,返回的是单个对象
var omsg = document.querySelector(".msg");
console.log(omsg.lastElementChild)//<h2>二级标题</h2>
// 上一个兄弟,返回的是单个对象
var omsg = document.querySelector(".msg");
console.log(omsg.previousElementSibling)//<div id="box">3</div>
1 // 下一个兄弟,返回的是单个对象
var omsg = document.querySelector(".msg");
console.log(omsg.nextElementSibling)//<div class="cont">4</div>
// 其他节点选择器: </script>
</html>
DOM选择器之元素节点选择器的更多相关文章
- DOM选择器之元素选择器
DOM中元素选择器 在DOM中我们可以将元素选择器分为两类:1.元素节点选择器:2.其它节点选择器.通过选择器选择HTML中的元素以对其进行操作,以此实现用JS对页面的操作. 一.元素节点选择器 1. ...
- CSS选择器之伪类选择器(元素)
:first-child 选择某个元素的第一个子元素(IE6不支持) :last-child 选择某个元素的最后一个子元素 :first-of-type [CSS3]选择一个上级元素下的第一个同类子元 ...
- jQuery选择器之内容过滤选择器Demo
测试代码: 04-内容过滤选择器.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...
- CSS选择器之伪类选择器(交互)
:link 选取未访问链接 :active 选取活动链接(单击某链接,未松开鼠标时). :visited 选取已被访问的链接. :target 链接指定的目标 :hover 当鼠标浮在元素上方时. : ...
- jQuery选择器之基本筛选选择器
<h2>基本筛选器</h2> <h3>:first/:last/:even/:odd</h3> <div class="left&quo ...
- DOM基础+domReady+元素节点类型判断
DOM节点类型 nodeType element 1 Node.ELEMENT_NODE 元素节点 attr 2 Node.ATTRIBUTE_NODE 属性节点 text 3 ...
- jQuery选择器之元素选择器
元素选择器:根据给定(html)标记名称选择所有的元素. 描述: $('element') 搜索指定元素标签名的所有节点,这是一个合集的操作.同样的也有原生方法getElementsByTagName ...
- CSS选择器之伪类选择器(伪元素)
selection [CSS4]应用于文档中被用户高亮的部分(比如使用鼠标或其他选择设备选中的部分).(IE8及以下不支持)(火狐-moz-selection) first-line 选择每个 < ...
- jQuery选择器之基本过滤选择器Demo
测试代码: 03-基本过滤选择器.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...
- jquery选择器之内容过滤选择器
先写出DOM元素的HTML结构: <style type="text/css"> /*高亮显示*/ .highlight{ background-color: gray ...
随机推荐
- Windows 10 ~ Jenkins 安装
首先: jenkins是由java写的,所以在使用之前请安装好JDK(最好安装JDK1.8) 下载jenkins.war包并放到一个自己创建的目录D:\jenkins下:https://mirrors ...
- @media移动PC端fontSize响应设置
@media only screen and (min-width: 320px) and (max-width: 359px) { html, body { font-size: 8.51px; } ...
- 免费Linux RDP,用来练习linux或者Python,还能做成远程桌面
分类:资源| 阅读:1103次阅读 goorm提供了免费的Linux容器,用它来在线练习命令行是非常不错的. 它的注册非常简单:https://ide.goorm.io/ 直接用谷歌账号登录即 ...
- day01学习小记
# Markdown学习 ## 标题 ### 三级标题 #### 四级标题 ## 字体 Hellow,World! Hellow,world hellow,world! hellow,world ## ...
- 面向对象ooDay9
精华笔记: 多态:多种形态 同一个对象被造型为不同的类型时,有不同的功能-------所有对象都是多态的(明天总结详细讲) 对象的多态:水.我.你...... 同一类型的引用在指向不同的对象时,有不同 ...
- 用python写xml文件
def writeInfoToXml(filename, config_id, obj_name): from xml.dom.minidom import Document ''' eg: < ...
- Javaheima12
Java 不可变集合 如果某个数据不能修改,把它防御性地拷贝到不可变集合红是个很好的实践 或者当集合对象被不可信的库调用时,不可变形式是安全的 创建 再List,Set,Map接口中,都存在of方法, ...
- MySql创建表遇到的问题
SQL语句如下: CREATE TABLE IF NOT EXISTS `student`{ `id` INT(4) NOT NULL COMMENT '学号', `name` VARCHAR(30) ...
- junit单元测试踩过的坑
1.测试方法不能直接获取到系统初始化的配置信息,需要专门读取 2.单元测试多线程子线程不执行,不会像主线程一样等待子线程退出而退出, 会直接退出. . https://blog.csdn.net/yu ...
- 【帆吖】Java学习零基础21
数组 1 package array; 2 3 public class Demo1 { 4 public static void main(String[] args) { 5 int[ ] num ...