DOM方法可获取元素节点,分别是通过元素ID、通过标签名字、通过类名字和选择器等 来获取。
-
getElementById
document.getElementById(id)
取得对应id
元素节点,返回相应的对象。 -
getElementsByTagName
element.getElementsByTagName(tag)
方法返回一个对象数组,每个对象分别对应着文档里有着给定标签的一个元素。 -
getElementsByClassName
getElementsByClassName(class)
返回一个具有相同类名的元素的数组。 -
getElementsByName
getElementsByName(name)
通过name
属性获取元素节点对象的数组。 -
querySelector(selecterStr)
querySelector
方法传入选择器字符串为参数,返回查询得到的第一个元素节点对象。 -
querySelectorAll(selecterStr)
querySelectorAll
方法传入选择器字符串为参数,返回查询得到的元素节点对象数组。
-
getElementsByTagName()
方法——返回当前节点的指定标签名后代节点。
-
childNodes
属性——表示当前节点的所有子节点
-
firstChild
属性——表示当前节点的第一个子节点
-
lastChild
属性——表示当前节点的最后一个子节点
-
parentNode
属性——表示当前节点元素的父节点
-
previousSibling
属性——表示当前节点的前一个兄弟节点。
-
nextSibling
属性**——表示当前节点的后一个兄弟节点。
getAttribute
方法就是用来获取元素属性。相应地,setAttribute
方法则可以更改属性节点的值。
object.getAttribute(attribute)
,只能通过元素节点对象调用。object.setAttribute(attribute,value)
,对属性节点的值做出修改,只能用于元素节点。
用户与浏览器之间的交互行为,比如:点击、鼠标移动、关闭窗口等等。
- 获取对应元素对象
- 对应事件绑定处理函数
- 当事件触发时,绑定的处理函数将被调用。
当事件的响应函数出发时,浏览器都会将一个时间函数作为实参传递进响应函数。
示例:event作为形参,作为事件对象传入响应函数。(以下示例不适用IE8及以下,IE8使用window
全局对象的属性window.event
获取。)
冒泡(Bubble)是指当后代元素上的事件被触发时,其祖先元素的相同事件也会被触发。
如果不希望发生冒泡,可使用事件对象进行取消。:event.cancelBubble = true;
只绑定一次事件,可应用于多元素上。
将事件绑定到元素共同的祖先元素上,当后代元素上的事件触发时,会一直冒泡到祖先元素响应事件。这便是事件委派。
核心内容:
- 事件对象
event.target
返回触发事件的元素。
addEventListener(事件名,响应函数,布尔值)
,绑定多个相同事件到同一个元素节点。触发事件后按绑定顺序执行。attachEvent(事件名,响应函数)
,只限在IE8及以下浏览器中使用。绑定多个相同事件到同一个元素节点,触发事件后按绑定顺序逆序执行。- 注意:
序号1
方 法事件名不要带on
。 - **
return false;
**取消对应事件的默认行为。 - **
event.preventDefault()
**事件对象方法,取消在addEventListener()
中定义事件的默认行为。
应用 DOM 方法完成创建元素、创建文本节点、删除元素节点。
-
createElement(tagName)
创建一个元素节点对象并返回,参数
tagName
是标签名的字符串。 -
createTextNode(textContent)
创建一个文本节点对象并返回,参数
textContent
为文本内容字符串。 -
appendChild(childNode)
方法——元素节点方法,父节点添加
childNode
子节点。 -
insertBefore(newChild, refChild)
方法——父节点调用方法,可以在指定的
refChild
前插入新节点newChild
。 -
replaceChild(newChild, oldChild)
方法——父节点调用,指定
newChild
节点替换oldChild节点。
-
removeChild(child)
方法——父节点调用,删除置顶的子节点
child
。 -
parentNode
属性——子节点调用方法,返回该节点的父节点。
在 JavaScript 中使用 元素.style.样式名
获取该元素内联样式值,如果对 元素.style.样式名
赋值将会赋给该元素相应的样式值。类似的还有如下元素样式属性: