Appearance
event
前言:详解 dom 3 规范下的事件模型
概述
所有讲述参考 UI EVENT
Event syntax
创建一个 event 对象
js
//1. 创建事件对象,确定绑定元素
var event = new Event('test',{detail:'custom_event'});
var ele = document.querySelector('#create_event');
//2. 绑定事件监听
ele.addEventListener('test',function (e) {
console.log('receive event type is: ',e.detail);
});
//3. 触发事件
ele.dispatchEvent(event);
可以看出自定义事件的步骤如下.
- 创建事件,确定事件绑定元素
- 绑定监听事件
- 触发事件
若期望模拟点击事件则如下.
js
var custom_click = new MouseEvent('click',{
'view':window,
'bubbles':true,
'cancelable':true
});
var ele = document.querySelector('#custom_click');
ele.addEventListener('click',function() {
console.log('模拟触发点击事件!');
});
ele.dispatchEvent(custom_click);
困惑
- [ ] 阻止事件传递
- [ ] 上层事件对象的识别
调试事件
查看 监控事件
- monitorEvents() 监听元素上的所有事件
键盘事件
事件概述
类型分为三种
- keydown 任何键按下触发
- keypress 任何键按下触发,持续触发
- keyup 按键释放触发