1:基本概念
系統(tǒng)內(nèi)發(fā)生的動(dòng)作或發(fā)生的事情,系統(tǒng)會(huì)在事件出現(xiàn)時(shí)觸發(fā)某種信號(hào),提供一個(gè)自動(dòng)加載某種動(dòng)作的機(jī)制。
var myButton = document.getElementById('button'); myButton.onclick = function(){ alert('點(diǎn)擊了button'); } myButton = null;
2:事件三要素
- 事件源(觸發(fā)事件的元素也就是你是要對(duì)什么東西進(jìn)行操作)
- 事件(事件的觸發(fā)方式也就是你要做什么實(shí)現(xiàn)所要的交互效果)
- 處理函數(shù)(事件觸發(fā)后要執(zhí)行的代碼也就是在事件進(jìn)行后你要目標(biāo)變成什么樣子)
3:事件冒泡(DOM)
- 觸發(fā)階段
- 捕獲階段
- 冒泡階段
4:創(chuàng)建自定義事件
var event = new Event('myEvent'); /* var event = document.creatEvent('Event'); event.initEvent('myEvent',true,true); */ myButton.addEventListener('myEvent',function(e){ debugger; },false); myButton.dispatchEvent(event);
5:添加自定義數(shù)據(jù)
var event = new CustomEvent('myEvent',{ 'detail':{ time: new Date().toLocalDateString(); } }); myButton.addEventListener('myEvent',function (e){ debugger; },false); myButton.dispatchEvent(event);