|
目录
事件
1. 鼠标事件
2. 键盘事件
3. 触摸事件
4. 表单事件
5. 过渡事件
6. 动画事件
事件对象
1. 事件对象
2. 鼠标事件对象
3. 键盘事件对象
4. 触摸事件对象
事件
事件通常与函数配合使用,这样就可以通过发生的事件来驱动函数执行。
注意:事件名称大小写敏感。若是事件监听方式,则在事件名的前面取消on。?
1. 鼠标事件
| 鼠标事件 | 触发条件 |
|---|
| onclick | 鼠标点击左键触发 | | oncontextmenu | 鼠标点击右键触发 | | ondblclick | 鼠标双击触发 | | onmouseover | 鼠标经过触发 | | onmouseout | 鼠标离开触发 | | onfocus | 获得鼠标焦点触发 | | onblur | 失去鼠标焦点触发 | | onmousemove | 鼠标移动触发 | | onmouseup | 鼠标弹起触发 | | onmousedown | 鼠标按下触发 |
?给btn按钮添加点击事件,点击弹出 你好!
let btn = document.querySelector('button')
btn.onclick = function() {
alert('你好!')
}
2. 键盘事件
| 键盘事件 | 触发条件 |
|---|
| onkeyup | 某个键盘按键被松开时触发 | | onkeydown | 某个键盘按键被按下时触发 | | onkeypress | 某个键盘按键被按下时触发?不识别功能键?比如 ctrl?等 |
键盘按键被松开时触发,弹出 你好?!
window.onkeyup = function() {
alert('你好!')
}
3. 触摸事件
| 触摸touch事件 | 说明 |
|---|
| touchstart | 手指触摸到一个 DOM?元素时触发 | | touchmove | 手指在一个 DOM?元素上滑动时触发 | | touchend | 手指从一个 DOM?元素上移开时触发 |
?手指触摸盒子触发
let div = document.querySelector('div')
div.ontouchstart = function() {
alert('您触摸了盒子')
}
4. 表单事件
| 表单事件 | 触发条件 |
|---|
| onfocus | 表单获得焦点触发 | | onblur | 表单失去焦点触发 | | oninput | 表单每次输入触发 | | onchange | 表单内容发生改变时触发 | | onselect | 表单文本被选取时触发 | | onreset | 表单重置时触发 | | onsubmit | 表单提交时触发 |
将表单内每次输入的内容打印到控制台?
let input = document.querySelector('input')
input.oninput = function() {
console.log(this.value);
}
5. 过渡事件
| 过渡事件 | 触发条件 |
|---|
| ontransitionend | 在过渡完成时触发 |
6. 动画事件
| 动画事件 | 触发条件 |
|---|
| onanimationend | 在动画结束播放时触发 | | onanimationiteration | 在动画重复播放时触发 | | onanimationstart | 在动画开始播放时触发 |
事件对象
1. 事件对象
| 事件对象属性方法 | 说明 |
|---|
| e.target | 返回触发事件的对象 | | e.type | 返回事件的类型 比如click mouseover 不带on | | e.preventDefault() | 该方法阻止默认事件 比如禁止页面右键 | | e.stopPropagation() | 阻止事件冒泡 |
??点击按钮后打印出触发事件的对象
let btn = document.querySelector('button')
btn.onclick = function(e) {
console.log(e.target);
}

2. 鼠标事件对象
| 鼠标事件对象 | 说明 |
|---|
| e.clientX | 返回鼠标相对于浏览器窗口可视区的 X?坐标 | | e.clientY | 返回鼠标相对于浏览器窗口可视区的 Y 坐标 | | e.pageX | 返回鼠标相对于文档页面的 X 坐标? IE9+支持 | | e.pageY | 返回鼠标相对于文档页面的 Y 坐标? IE9+支持 | | e.screenX | 返回鼠标相对于电脑屏幕的 X?坐标 | | e.screenY | 返回鼠标相对于电脑屏幕的 Y 坐标 |
3. 键盘事件对象
| 键盘事件对象 | 说明 |
|---|
| e.key | 返回用户按下的物理按键的值 |
?在页面按下 A 键后,弹出按下的物理按键的值
window.addEventListener('keyup', function(e) {
alert(e.key)
})

?注意:key 大小写敏感
4. 触摸事件对象
| 触摸列表 | 说明 |
|---|
| touches | 正在触摸屏幕的所有手指的一个列表 | | targetTouches | 正在触摸当前 DOM?元素上的一个手指的一个列表 | | changeTouches | 手指状态发生了改变的列表,从无到有,从有到无变化 |
|