JavaScript 事件

DOM事件

DOM事件的級別

DOM級別一共可以分為四個級別:DOM0級蔬墩、DOM1級译打、DOM2級和DOM3級。而DOM事件分為3個級別:DOM0級事件處理拇颅,DOM2級事件處理和DOM3級事件處理

    1. DOM0 : element.onclick = function(e) {}
    1. DOM1 :該標(biāo)準(zhǔn)中未涉及到事件綁定的相關(guān)東西
    1. DOM2 : element.addEventListener('click', function(e){}, false)奏司, 一個DOM元素可以添加多個事件
    1. DOM3 : element.addEventListener('keyup', function(e){}, false),在DOM2標(biāo)準(zhǔn)基礎(chǔ)上面增加了新的事件類型:鼠標(biāo)事件蔬蕊,鍵盤事件结澄,焦點(diǎn)事件

DOM事件模型

  1. 事件捕獲:從外向內(nèi), window -> document -> body -> button
  2. 事件冒泡:從內(nèi)向外哥谷,button -> body -> document -> window

DOM事件流

瀏覽器為當(dāng)前的頁面與用戶進(jìn)行交互的過程中岸夯,點(diǎn)擊鼠標(biāo)后事件如何傳入和響應(yīng)的呢?

捕獲階段:從外部容器開始向內(nèi)
目標(biāo)階段:事件通過捕獲到達(dá)目標(biāo)階段
冒泡階段:從目標(biāo)元素再上傳到window對象

事件委托

什么事件可以代理们妥?什么事件不可以代理呢猜扮?

  • 通常支持事件冒泡(Event Bubbling)的事件類型為鼠標(biāo)事件和鍵盤事件,例如:mouseover, mouseout, click, keydown, keypress监婶。
  • 接口事件(指的是那些不一定與用戶操作有關(guān)的事件)則通常不支持事件冒泡(Event Bubbling)旅赢,例如:load, change, submit, focus, blur齿桃。

事件對象event的屬性方法的差別

事件 IE DOM
停止冒泡 cancelBubble = true stopPropagation()
阻止元素默認(rèn)事件 returnValue = false preventDefault()
事件目標(biāo) srcEelement target

自定義事件

  • 如何給一個按鈕綁定一個自己定義的事件呢?
  // 1. 使用Event對象來自定義事件
  // 開始創(chuàng)建一個自己定義的事件對象
  var eve = new Event('customEvent');
  // 使用dom2事件處理的方式來給這個元素綁定一個事件
  var dom = document.documentElement;
  dom.addEventListener('customEvent', function(e) {
    console.log('customEvent called!');
  });
  // 下面的這句話可以在適合的場景中來觸發(fā)一個自己定義的事件對象
  setTimeout(function(){
    // 在1s之后觸發(fā)這個事件
    dom.dispatchEvent(eve);
  }, 1000)


  // 2. 使用CustomEvent來實(shí)現(xiàn)自定義事件
  var dom = document.documentElement;
  // 使用CustomEvent的方式可以在事件觸發(fā)的時候傳遞一個參數(shù)煮盼,然后通過e.detail 的方式來獲取這個參數(shù)信息
  var myClick = new CustomEvent('myClick', {detail : {name : 'zhangsan', age : 24}});
  dom.addEventListener('myClick', function(e){
    console.log(e.detail, e.target)
  })
  dom.dispatchEvent(myClick);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末短纵,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子僵控,更是在濱河造成了極大的恐慌香到,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件报破,死亡現(xiàn)場離奇詭異悠就,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)充易,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門梗脾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人盹靴,你說我怎么就攤上這事炸茧。” “怎么了稿静?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵宇立,是天一觀的道長。 經(jīng)常有香客問我自赔,道長妈嘹,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任绍妨,我火速辦了婚禮润脸,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘他去。我一直安慰自己毙驯,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布灾测。 她就那樣靜靜地躺著爆价,像睡著了一般。 火紅的嫁衣襯著肌膚如雪媳搪。 梳的紋絲不亂的頭發(fā)上铭段,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機(jī)與錄音秦爆,去河邊找鬼序愚。 笑死,一個胖子當(dāng)著我的面吹牛等限,可吹牛的內(nèi)容都是我干的爸吮。 我是一名探鬼主播芬膝,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼形娇!你這毒婦竟也來了锰霜?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤桐早,失蹤者是張志新(化名)和其女友劉穎锈遥,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體勘畔,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡所灸,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了炫七。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片爬立。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖万哪,靈堂內(nèi)的尸體忽然破棺而出侠驯,到底是詐尸還是另有隱情,我是刑警寧澤奕巍,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布吟策,位于F島的核電站,受9級特大地震影響的止,放射性物質(zhì)發(fā)生泄漏檩坚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一诅福、第九天 我趴在偏房一處隱蔽的房頂上張望匾委。 院中可真熱鬧,春花似錦氓润、人聲如沸赂乐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽挨措。三九已至,卻和暖如春崩溪,著一層夾襖步出監(jiān)牢的瞬間浅役,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工悯舟, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留担租,地道東北人砸民。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓抵怎,卻偏偏與公主長得像奋救,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子反惕,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 一尝艘、事件流 1.1 事件流 事件流:從頁面中接受事件的順序 事件冒泡:即事件開始時由最具體的元素(文檔中嵌套層次最...
    范小飯_閱讀 1,070評論 1 9
  • JavaScript 與 HTML 之間的交互是通過事件實(shí)現(xiàn)的。事件姿染,就是文檔或?yàn)g覽器窗口中發(fā)生的一些特定的交互瞬...
    threetowns閱讀 346評論 0 0
  • DOM 級別 此文中涉及到DOM0和DOM2級事件背亥,故先行解釋 文檔對象模型(DOM)是一個平臺,一個中立于語言的...
    web_Tracy閱讀 330評論 0 1
  • ??JavaScript 與 HTML 之間的交互是通過事件實(shí)現(xiàn)的。 ??事件闽颇,就是文檔或?yàn)g覽器窗口中發(fā)生的一些特...
    霜天曉閱讀 3,498評論 1 11
  • 聲明:本文來源于http://www.webzsky.com/?p=731我只是在這里作為自己的學(xué)習(xí)筆記整理一下(...
    angryyan閱讀 7,030評論 1 6