NodeList 表示 HTML 元素集合
选择器
- 作用:选中html元素,在js中以对象形式存在,
- js通过对dom对象下属性多次赋值,以及api使用,完成页面动画
- **注意:选择器返回值,有的是dom对象,有的集合,如果是集合,需要从集合中取值获取dom对象**
document.api
- document.getElementById()
- document.getElementsByClassName();
- document.getElementsByTagName();
- document.querySelector()
- document.querySelectorAll()
-...
'区别'
- 1:getElement...() 返回是 **HTMLCollection**,当使用 remove() removeChild() 删除时,集合长度会变短
- 2:querySelectAll 返回NodeList 当remove() removeChild() 删除时,集合长度不变
HTMLCollection 与 NodeList的区别是什么?
操作dom对象的api
增
- prentDOM.appendChild()
删
- prentDOM.removeChild()
改
- prentDOM.replaceChild(NEW,old)
查
- 查父元素 dom.parentElement;
- 查子元素们 dom.children
- 查兄弟 dom.nextElementSibling / dom.previousElementSibling
form
- 1:如何获取form对象
- 2:form中api reset() submit()
- 3: input focus() blur()
- 4: 验证是选中checkbox
demo
- 多选
- 单选
>for循环中,dom事件绑定,事件处理函数中,如何获取触发事件的元素?
> 根据触发事件元素,查找相关的兄弟元素,子元素 父元素 以及祖籍元素
如何获取触发事件的元素
- 1:闭包
- 2:this
- 3: var 变 let
- 删除列表
练习,相关元素的查找,以及 removeChild()的使用
- 新增列表
> 1:如何获取input输入框值
> 2:练习appendChild()使用
> 3:没有关系的元素之间,如何通过建立练习,完成交互功能的
Document.documentElement()
// 一个会返回文档对象(document)的根 元素 的只读属性(如 HTML 文档的<html>元素)
Document.getComputedStyle(DOM, Null)['css属性']
// 作用: 获取DOM的某个css样式值
// 参一: DOM对象
// 参二: Null 表示不获取子元素 css
// 返回值: cssStyleDelecretion 样式对象的集合
Document.getElementById()
//作用: 用过ID属性获取HTML元素对象
//参数: ID值 类型是字符串
//返回值: 返回选中DOM对象 没有选中的话NULL
;('基础差的同学可以记: 返回值是HTML标签,在js中存在的形象是对象.')
;('所有的HTML标签,都是,并且属性 Key 都一样')
Document.getElementsByTagName()
// 作用: 通过class类名获取HTML元素
// 参数: class值 类型是字符串
// 返回值: HTML集合, 如果没有: 集合长度为0
currenStyle.cssStyle
// 作用: 获取DOM的某个CSS样式
// 参数: DOM.css样式
// 返回值: DOM对象的CSS样式中的值
Document.getElementsByClassName()
// 作用: 通过class类名获取HTML元素
// 参数: HTML值 类型是字符串
// 返回值: HTML集合, 如果没有null,集合长度为0
Document.getElementsByName()
// 作用: 通过class name类名获取 HTML 元素
// 参数: HTML 值 类型是字符串
// 返回值: HTML集合. 如果没有null 集合长度为 0
Document.querySelector()
// 作用: 通过HTML文档中与class的属性名来进行匹配获取
// 参数: HTML文档的CSS选择器
// 返回值: 匹配到的第一个. 如果没有匹配到,则返回NULL
Document.querySelectorAll()
// 作用: 获取与指定选择器组匹配的HTML文档中的列表元素
// 参数: HTML文档 中所有的形同标签属性的选择器
// 返回值: 返回所有与参数相同的DOM对象,如果没有则返回NodeList
Document.createElement()
// 作用: 创建HTML元素
// 使用: var className = document.createElement('div')
运算符 API
-
展开运算符
…
作用: 用于类数组变数组. 数组合并 -
添加 class 类名
add()
专业名词: DOMTokenList.add()
页面输出: DOM.classList.add()
作用: DOM 元素的新增 class 类名
参数: String 是增加的类名
返回值: 无 -
删除某个类名
remove()
专业名词: DOMTokenList.remove()
页面输出: DOM.classList.remove()
使用: DOM.classList.remove(‘删除的’)
作用: 删除 DOM 中某个类名
参数: String 被删除的类名
返回值: 无 -
遍历 classList 获取每一个类名
forEach(function(){})
专业名词: DOMTokenList.forEach(function(){})
页面输出: DOM.classList.forEach(function(){})
作用: 遍历 classList, 获取每一个 HTML 标签中类名
参数: 回调函数
回参: item 每个类名
返回值: 无 -
更改类名
replace()
专业名词: DOMTokenList.replace()
页面输出: DOM.classList.replace(‘old’,‘new’)
作用: 替换一个 class 类名
参一: 被替换的类名
参二: 新的类名 -
某一个 DOM 添加 class 类名
addClassName()
作用: 给某一个 DOM 添加 class 类名
参一: DOM 对象
参二: 添加新数组
返回值: DOM -
删除
removerClass()
作用: 删除某个元素中的类名
参一: DOM 对象
参二: 被删除的类名
返回值: DOM 对象 -
更新
replace()
作用: 更新 DOM 对象属性名
参一: DOM 对象
参二: 被更新的 class 类名
参三: 替换的 class 类名
返回值: 替换后的 DOM 对象 -
设置 CSS 属性
DOM.style.值对象
作用: 给 HTML 设置行内样式,数以权重高
值: css 样式
使用: DOM.style.width -
新增
div.appendChild()
作用: 从父元素尾部添加一个新的子元素
参数: DOM 对象
返回值: 无 -
赋值
div.innerHTML()
作用: 重新进行赋值
参数: DOM 对象
返回值: 无 -
返回节点名称
Node.nodeName
作用: 返回当前节点名称
参数: Node 更改为 变量
使用: var Node = document.querySelector(‘input’); -
小写转换
str.toLocaleLowerCase()
作用: 把字符串全部转换为小写
参数: 无
返回值: 新的字符串,在其中 stringObject 的所有大写字符全部被转换为了小写字符。 -
大写转换
str.toLocaleUpperCase()
作用: 把字符串全部转换为大写
参数: 无
返回值: 新的字符串,在其中 stringObject 的所有大写字符全部被转换为了大写字符 -
查找指定元素的下一个兄弟元素
Node.nextElementSibling
作用: 查找指定元素的下一个兄弟元素
参数: 无
返回值: 返回指定元素之后的下一个兄弟元素(相同节点树层中的下一个元素节点)。Node.nextSibling
作用: 返回列表项的下一个同胞
参数: 无
返回值: 返回指定节点之后紧跟的节点,在相同的树层级中。 -
获取某个子元素的标签名称
Element.children
作用: 只读属性
参数: 无
返回值: 对象类型为 HTMLCollection,你可以使用 elementNodeReference.children[1].nodeName 来获取某个子元素的标签名称。 -
获取某个父元素节点
Node.parentElement
作用: 返回当前节点的父元素节点
返回值: 返回当前节点的父元素节点,如果该元素没有父节点,或者父节点不是一个 DOM 元素,则返回 null。 -
返回包含指定节点的子节点的集合
Node.childNodes
作用: 返回包含指定节点的子节点的集合,该集合为即时更新的集合
参数: 无 -
删除父元素中的子元素
parent.removeChild(子元素)
作用:删除父元素中的子元素
参数:子元素 -
替换新旧节点
prentDom.replaceChild(newDom,oldDom)
作用: 替换新旧节点
参一: 新节点
参二: 旧节点 -
获取视图窗口宽度高度
页面滚动条:页面高度 - 窗口高度 = 滚动最大高度
innerWidth
作用: 获取视图宽度
参数: 无
返回值: 窗口宽度innerHeight
作用: 获取视图高度
参数: 无
返回值: 窗口高度 -
记录是否勾选
check.checked
作用: 查看是否选中
参数: 无
返回值: true 选中/false 没有选中 -
浏览器的本地存储
localStorage 浏览器的本地存储
localStorage.setItem(key,value)
作用:往 localStorage 中添加或者修改 key value 键值对
参一:key 意义:表示存储数据的名字
参二:value 意义:具体的数据
返回值:无 -
第一次打开页面,判断是否有 user
localStorage.getItem(key)
作用:从 localStorage 中共读取数据
参数:key
返回值:key 的 value 值