这是我参与8月更文挑战的第26天,活动详情查看:8月更文挑战
前言
js事件是为了实现用户交互,比如当用户鼠标点击或者键盘输入时,浏览器会监听截获并且通知js做出反馈执行相应的函数,实现交互
js的事件类型有很多,于是今天来总结一下常用的JS事件
常用事件
鼠标事件
click点击事件、mousedown鼠标按下事件、mousemove鼠标移动事件、mouseup鼠标抬起事件
contextmenu右键出菜单事件、mouseenter/mouseover鼠标进入事件、mouserleave/mouseout鼠标离开事件
可通过事件对象的button属性来区分是左键\滚轮\右键,分别对应值 0 / 1 / 2 DOM3规定:click事件只能监听左键;只能通过mousedown和mouseup来判断鼠标键
键盘事件
keydown某键被按下时、keyup被松开时、keypress按下并且松开时
触发顺序:先 keydown,然后keypress,最后keyup
keydown和keypress的区别:
- keydown可以响应任意按键,keypress只能响应字符类按键
- keypress返回ASCII 码, 可以转成相应的字符
文本类操作事件
- input:文本变化时触发
- change:聚焦或失去焦点时判断状态是否改变,发生改变是触发change事件
- focus:聚焦时触发
- blur:失去焦点时触发
利用focus和blur可模拟placeholder
<input type="text" name="user" value="请输入用户名" style="color:#999"
onfocus="if(this.value=='请输入用户名'){this.value = '';this.style.color='#424242'}"
onblur="if(this.value == ''){this.value = '请输入用户名';this.style.color='#999'}" >
其他
- scroll:滚动条滚动时
- load:页面加载完触发
- abort:图像的加载失败
- dblclick:双击事件
- error:当加载图像和文档时发生错误
- resize:窗口或者框架被重新调整大小
- select:文本被选中时
- reset:点击重置按钮时
- submit:点击提交按钮时
写在最后
刚刚学习前端,还有很多不是很懂
新手小白上路,欢迎点赞支持、留言评论,感谢各位大佬~