JS鼠标事件总结学习
2024-01-08 08:35:15
首先我们先简单过一遍鼠标MouseEvent事件:
- click: 当鼠标单击元素时触发。
- dblclick: 当鼠标双击元素时触发。
- mousedown: 当按下鼠标按钮时触发。
- mouseup: 当释放鼠标按钮时触发。
- mousemove: 当鼠标指针在元素上移动时触发。
- mouseover: 当鼠标指针移动到元素上方时触发。
- mouseout: 当鼠标指针移出元素时触发。
- contextmenu: 当用户在元素上点击鼠标右键时触发上下文菜单事件。
? ? ?执行顺序:mousedown —> mouseup —> click?
鼠标事件中的有很多属性,用于获取鼠标在不同坐标系下的位置信息,包括但不限于:
- clientX、clientY: 鼠标相对于浏览器窗口客户区域的坐标。
- offsetX、offsetY: 鼠标相对于触发事件的元素的内边距边界的坐标。
- layerX、layerY: 鼠标相对于触发事件的元素的边框边界的坐标(已废弃)。
- pageX、pageY: 鼠标相对于整个页面左上角的坐标。
- screenX、screenY: 鼠标相对于(电脑)屏幕左上角的坐标。
使用场景:
- 当需要获取鼠标相对于页面或浏览器窗口的坐标时,可以使用pageX和pageY。
- 当需要获取鼠标相对于触发事件的元素的坐标时,可以使用clientX和clientY或者offsetX和offsetY。
- 当需要获取鼠标相对于屏幕的坐标时,可以使用screenX和screenY。
?代码示例:
document.addEventListener('mousemove', function(event) {
console.log('pageX: ' + event.pageX + ', pageY: ' + event.pageY);
console.log('clientX: ' + event.clientX + ', clientY: ' + event.clientY);
console.log('offsetX: ' + event.offsetX + ', offsetY: ' + event.offsetY);
console.log('screenX: ' + event.screenX + ', screenY: ' + event.screenY);
});
推荐博文:
文章来源:https://blog.csdn.net/qq_44327851/article/details/135253536
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!