javascript笔记整理系列
来源:互联网 发布:移民澳洲 知乎 编辑:程序博客网 时间:2024/06/06 07:21
1 DOM简介
当在浏览器中打开网页时,浏览器会接受网页的HTML文档并解析,构建文档结构的模型,并使用该模型在屏幕上绘制页面。模型是一个所见即所得的数据结构,改变模型会是的屏幕上的页面产生相应的变化。
2 文档结构
可以将HTML文件想象成一系列嵌套的箱子,浏览器使用与之对应的数据结构来表示文档。我们将这种表示方式成为文档对象模型(DOM)。
3 树
DOM是树形结构,节点包含children,也可以追溯parent。
每个DOM节点对象都包含nodeType属性,该属性包含一个标识节点类型的数字代码。
4 节点Node
4.1 节点类型
DOM中共有12种节点类型,在Node常量中。考虑IE兼容,使用数值比较判断。
- 元素:Node.Element_NODE(1)
- 属性:Node.Attribute_NODE(2)
- 文本:Node.TEXT_NODE(3)
- …
4.2 节点属性
- nodeType:节点类型,通过与类型数值判断节点类型。
- nodeName:节点名称
nodeValue:节点值
childNodes:子节点集合,NodeList对象,伪数组
- childNodes[0]
- childNodes.item(1)
- childNodes.length:length属性瞬间快照,并非动态值。
parentNode:父节点
previousSibling:上一兄弟节点
nextSibling:下一兄弟节点
firstChild:第一个子节点
- lastChild:最后一个子节点
- ownerDocument:顶端节点
4.3 节点方法
hasChildNodes():是否有子节点
appendChild(node):插入子节点
- insertChild(newNode,eferenceNode):指定子节点前插入节点
- replaceChild(newNode,oldNode):替换节点
removeChild(node):移除节点
cloneNode([isDeep]):克隆节点
- true:深复制
- false:浅复制
- 只复制特性,不复制属性及事件
- normalize():处理文本节点
5 Document
5.1 document对象属性
- 浏览器中,document: HTMLDocument: Document
- document.documentElement -> html
- document.body -> body
- docume.doctype
- document.title
- document.URL:只读。
- document.domain
document.referrer:只读。
document.anchors
- document.forms
- document.images
- document.links
5.2 document对象方法
- getElementById(id):返回el对象
- getElementsByTagName(tagname):返回HTMLCollection类型对象,伪数组。
- getElementsByName(name)
- getElementsByClassName(class)
4 通过树结构访问节点
- firstChild:指向第一个子节点
- lastChild:指向最后一个子节点
- previousSibling:上一个相邻节点。
- nextSilbing:下一个相邻节点。
。。。
5 查找元素
document.getElementsByTagName("selector");
document.getElementById("id");
document.getElementsByClass("class");
6 修改文档
- removeChild():从文档中移除特定节点。
- appendChild():添加子节点。
- insertBefore():将第一个参数表示的节点插入第二个参数表示的节点前。
- replaceChild():将第一个子节点替换为另一个节点。
7 创建节点
8 属性
9 布局
- 块元素(Block):自动占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样子;
- 内联元素(Inline):没有自己的独立空间,它是依附于其他块级元素存在的,因此对行内元素设置高度、宽度、内外边距等属性,都是无效的。
10 样式
11 层叠样式
12 查询选择器
- querySelectorAll()
- querySelector()
13 位置与动画
0 0
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理系列
- javascript笔记整理
- JavaScript学习笔记整理
- 初学JavaScript,整理整理笔记(一)
- 初学javascript,整理整理笔记(二)
- 多年JavaScript学习笔记整理
- Oracle 12c --Invisible Columns 可隐藏列
- redis数据导入导出
- 使用C#选择文件夹、打开文件夹、选择文件
- 架构师养成之路--学习资料
- 安装配置zabbix-agent
- javascript笔记整理系列
- app-bar-layout
- 性能测试分析
- ExpandableListView三级列表的实现
- 安装配置zabbix-server
- Hinton Neural Network课程笔记9f:Mackay的设定正则化系数方法
- 字符串转表方法
- Telecom服务
- zabbix简介及安装