当我们使用属性绑定事件时如果需要事件参数e,需要传入event这个实参。
event | 事件信息对象,包含了事件目标和坐标信息 |
event.type | 事件类型 |
event.target |
事件触发目标,谁触发了事件(不确定是谁) |
event.currentTarget |
事件目标本身,谁绑定了事件(总是指向事件目标) |
this |
this指向事件目标 == event.currentTarget |
关于参数e的坐标问题
event.screenX, event.screenY |
鼠标相对于电脑屏幕左上角的坐标 |
event.pageX, event.pageY |
鼠标相对于网页左上角的坐标 |
event.clientX, event.clientY |
鼠标相对于显示窗口左上角的坐标 |
event.layerX, event.layerY |
鼠标相对于非静态定位的父级元素左上角的坐标,类似于绝对定位 |
event.offsetX, event.offsetY |
鼠标相对于event.target出发事件的目标左上角的坐标 |
<div><button>点我</button></div>
<!-- 使用属性绑定事件时, 如果需要事件参数e, 需要传入event这个实参 -->
<script>
// var data = prompt(\"提示\")
var div = document.querySelector(\"body div\")
div.onclick = function(event){
// 每一个事件被触发时,都会向事件函数中传入一个参数, 这个参数是事件信息对象, 里边包含了事件目标,和坐标等信息
console.log(event)
// 获取事件类型
console.log(event.type)
// 获取事件触发目标, 谁触发了事件, 可以是事件目标div的子元素
console.log(event.target)
// 获取事件目标本身, 谁绑定了事件, 总是事件目标div
console.log(event.currentTarget)
// 在事件函数中this指向事件目标 == event.currentTarget
console.log(this)
// 关于坐标
// 1, 鼠标相对于电脑屏幕左上角的坐标
console.log(event.screenX, event.screenY)
// 2, 鼠标相对于网页左上角的坐标
console.log(event.pageX, event.pageY)
// 3, 鼠标相对于显示窗口左上角的坐标
console.log(event.clientX, event.clientY)
// 4, 鼠标相对于非静态定位的父级元素左上角的坐标,类似于绝对定位
console.log(event.layerX, event.layerY)
// 5, 鼠标相对于event.target出发事件的目标左上角的坐标
console.log(event.offsetX, event.offsetY)
}
</script>
来源:https://blog.csdn.net/weixin_50053454/article/details/123117108
本站部分图文来源于网络,如有侵权请联系删除。