一、节点
(1)元素节点
(2)文本节点
(3)属性节点
二、获取元素
document下的API
getElementById() // Id名字
getElementByName() //根据name属性查找 返回一个NodeList
getElementsByTagName(); // 标签名字 返回值一个对象数组HTMLCollection 对象数组里面每个都是对象object
getElementsByClassName('class); // 类名 返回对象数组HTMLCollection 其它的元素也支持这个接口
querySelector(); //获取到第一个元素(返回单个Node 匹配到多个只返回第一个)
querySelectorAll(); //表示与指定选择器组匹配的文档元素列表。 获取指定选择器中的所有元素标签NodeList
close()
open()
write()
writeln()
三、创建节点
createElement('div') //这是标签/元素节点
createTextNode('我是文本节点')
cloneNode(boolean) //boolean表示是否复制子元素
creatDocumentFragment() //创建一个DocumentFragment
四、修改节点
节点修改API都具有下面这几个特点:不管是新增还是替换节点,如果其原本就在页面上,那么原来位置的节点将被移除;修改之后节点本身绑定的事件不会消失;
appendChild() // 将一个节点添加到指定父节点的子节点列表末尾
insertBefore() //parentNode.insertBefore(newNode, refNode); // refNode是必传的,如果不传该参数会报错;
removeChild() //删除指定的子节点并返回子节点 var deletedChild = parent.removeChild(node);
replaceChild() // 用指定的节点替换当前节点的一个子节点,并返回被替换掉的节点; replacedNode = parentNode.replaceChild(newChild, oldChild);
五、节点关系
(1)父关系
parentNode: 元素父节点,每个元素都有 可能是 Element,Document或者DocumentFragment parentElement: 元素的父元素节点:与parentnNode区别是, 如果该元素没有父节点,或者父节点不是一个元素节点.则 返回null
(2)子关系
children: 返回一个实施的HTMLCollection,子节点都是Element
childNodes: 返回一个实时的NodeList 元素的子节点列表,可能会有包含文本节点,注释节点等
firstChild: 返回第一个子节点,不存在返回null,对应 firstElementChild
lastChild: 返回最后一个子节点,不存在返回null,对应lastElementChild
(3)兄弟关系
previousSibliing: 节点的前一个节点,如果不存在返回nul。有可能拿到文本节点和注释节点
nextSibling: 节点后的一个节点,如果不存在返回null。有可能拿到文本节点和注释节点
previousElementSibling:返回前一个元素节点,前一个节点必须是Element
nextElementSibling: 返回后一个元素节点,后一个节点必须是Element
(六)获取和设置属性
getAttribute('属性名') //获取到用户在标签上写的原文;不属于document对象,只属于元素节点对象 没有返回null
setAttribute('属性名',value)
(七)事件相关API
onabort 图像的加载被中断。
onblur 元素失去焦点。
onchange 域的内容被改变。
onclick 当用户点击某个对象时调用的事件句柄。
ondblclick 当用户双击某个对象时调用的事件句柄。
onerror 在加载文档或图像时发生错误。
onfocus 元素获得焦点。
onkeydown 某个键盘按键被按下。
onkeypress 某个键盘按键被按下并松开。
onkeyup 某个键盘按键被松开。
onload 一张页面或一幅图像完成加载。
onmousedown 鼠标按钮被按下。
onmousemove 鼠标被移动。
onmouseout 鼠标从某元素移开。
onmouseover 鼠标移到某元素之上。
onmouseup 鼠标按键被松开。
onreset 重置按钮被点击。
onresize 窗口或框架被重新调整大小。
onselect 文本被选中。
onsubmit 确认按钮被点击。
onunload 用户退出页面。
(八)鼠标键盘属性
altKey 返回当事件被触发时,"ALT" 是否被按下。
button 返回当事件被触发时,哪个鼠标按钮被点击。
clientX 返回当事件被触发时,鼠标指针的水平坐标。
clientY 返回当事件被触发时,鼠标指针的垂直坐标。
ctrlKey 返回当事件被触发时,"CTRL" 键是否被按下。
metaKey 返回当事件被触发时,"meta" 键是否被按下。
relatedTarget 返回与事件的目标节点相关的节点。
screenX 返回当某个事件被触发时,鼠标指针的水平坐标。
screenY 返回当某个事件被触发时,鼠标指针的垂直坐标。
shiftKey 返回当事件被触发时,"SHIFT" 键是否被按下。12345678910
标准 Event 属性
bubbles 返回布尔值,指示事件是否是起泡事件类型。
cancelable 返回布尔值,指示事件是否可拥可取消的默认动作。
currentTarget 返回其事件监听器触发该事件的元素。
eventPhase 返回事件传播的当前阶段。
target 返回触发此事件的元素(事件的目标节点)。
timeStamp 返回事件生成的日期和时间。
type 返回当前 Event 对象表示的事件的名称。
(九)标准 Event 方法
initEvent() 初始化新创建的 Event 对象的属性。
preventDefault() 通知浏览器不要执行与事件关联的默认动作。
stopPropagation() 不再派发事件。