js事件

2020-04-09  本文已影响0人  事在人为s

事件冒泡 addEventListener 第三个参数为false 默认模式

事件捕获 addEventListener 第三个参数为true

var ev = document.getElementById('ev');

ev.addEventListener('click', function(e) {
    console.log('ev captrue');
}, true);

window.addEventListener('click', function(e) {
    console.log('window captrue');
}, true);

document.addEventListener('click', function(e) {
    console.log('document captrue');
}, true);

document.documentElement.addEventListener('click', function(e) {
    console.log('html captrue');
}, true);

document.body.addEventListener('click', function(e) {
    console.log('body captrue');
}, true);

自定义事件

//定义事件名为 test
var eve = new Event('test');

//绑定事件到id为dom的节点上
var dom = document.getElementById('dom');
dom.addEventListener('test', function() {
    console.log('test dispatch');
});

//触发事件
setTimeout(function() {
    dom.dispatchEvent(eve);
}, 1000);
上一篇 下一篇

猜你喜欢

热点阅读