DOM编程
DOM
Document Object Model
对象和方法
element
- element.innerHTML = new html content
改变元素的 inner HTML - element.attribute = new value
改变 HTML 元素的属性值 - element.setAttribute(attribute, value)
改变 HTML 元素的属性值 - element.style.property = new style
改变 HTML 元素的样式
本例返回 class=”intro” 的所有 <p> 元素列表:
1 | var x = document.querySelectorAll("p.intro"); |
window
- setInterval() 设置间隔执行函数
dom对象
- addEventListener\()当传递参数值时,请以参数形式使用调用指定函数的“匿名函数”
在 addEventListener() 方法中,通过使用“useCapture”参数来规定传播类型:文本节点的值能够通过节点的 innerHTML 属性进行访问1
2
3
4addEventListener(event, function, useCapture);
/*默认值是 false,将使用冒泡传播,如果该值设置为 true,则事件使用捕获传播。*/
/*在冒泡中,最内侧元素的事件会首先被处理,然后是更外侧的:首先处理 <p> 元素的点击事件,然后是 <div> 元素的点击事件。
在捕获中,最外侧元素的事件会首先被处理,然后是更内侧的:首先处理 <div> 元素的点击事件,然后是 <p> 元素的点击事件。*/
访问 innerHTML 属性等同于访问首个子节点的 nodeValue每个节点都有三个属性:nodeName,nodeType,nodeValue。
nodeType 属性:
- 如果节点是元素节点,则 nodeType 属性将返回 1。
- 如果节点是属性节点,则 nodeType 属性将返回 2。
nodeName 属性:
- nodeName 属性规定节点的名称。
- nodeName 是只读的
- 元素节点的 nodeName 等同于标签名
- 属性节点的 nodeName 是属性名称
- 文本节点的 nodeName 总是 #text
- 文档节点的 nodeName 总是 #document
nodeValue 属性:
nodeValue 属性规定节点的值。
元素节点的 nodeValue 是 undefined
文本节点的 nodeValue 是文本文本
属性节点的 nodeValue 是属性值
html中的换行也算节点 ,但只有空白,可以封装函数,传入父节点,遍历所有子节点,找到nodeType==3并且满足/^s+$/正则的文>本节点,删除它,注意删除时必须倒序删除
parentNode返回父节点
previousSibling返回上一个同级节点
nextSibling返回下一个同级节点
node.attributes可以获得节点的属性集合(无序 不重复的)可以>使用中括号索引属性
parent.replaceChild()替换节点
插入一个已经存在的元素节点,会删除原节点,此时可以使用cloneNode函数,创建一个副本,参数为true时连同文本节点一起克隆,默认为false
insertBefore()插入节点
署名-非商业性使用本文采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ZEKALRYN'S BLOG!
评论
