js 中 onclick事件的触发方式:
鼠标点击
,
tab 获取焦点后,按enter
spance
键。
不只是鼠标点击才会触发
事件绑定
html 中通过 onclick 绑定的代码是执行的JavaScript代码,所以用
funName()
,
可以绑定 this 对象:funName(this)
,否则this
返回window
event
可以在函数中使用,但不是函数的参数通过
addEventListener
绑定的函数,绑定的时候用funName
,
this
、event.currentTarget
指向当前对象
event
可以在函数中使用,是函数的第一个参数添加事件
element.addEventListener(event, function, useCapture)
useCapture参数:
true 表示在捕获阶段执行
false表示在冒泡阶段执行,默认
捕获:从大范围到小范围,冒泡是从小范围到大范围- 阻止自身的默认行为(跳转)
event.preventDefault();
- 阻止事件的传播
如果子元素和父元素都绑定事件,当点击子元素时,子元素出发后,父元素也会触发
如果只想要子元素触发事件,父元素不触发可以使用
event.stopPropagation()
来阻止事件的传播。 - document 事件
document.addEventListener(‘DOMContentLoaded’,function(){
// dom加载完毕后执行
},false);
document.onload = function() {
// 所有的资源加载完毕后执行
}