JavaScript三種綁定事件方式及相互之間的區(qū)別分析
本文實(shí)例講述了JavaScript三種綁定事件方式及相互之間的區(qū)別。分享給大家供大家參考,具體如下:
JavaScript三種綁定事件的方式:
1.
<div id="btn" onclick="clickone()"></div> //直接在DOM里綁定事件 <script> function clickone(){ alert("hello"); } </script>
2.
<div id="btn"></div> <script> document.getElementById("btn").onclick = function(){ alert("hello"); } //腳本里面綁定 </script>
3.
<div id="btn"></div> <script> document.getElementById("btn").addeventlistener("click",clickone,false); //通過偵聽事件處理相應(yīng)的函數(shù) function clickone(){ alert("hello"); } </script>
那么問題來了,1 和 2 的方式是我們經(jīng)常用到的,那么既然已經(jīng)有兩種綁定事件的方法為什么還要有第三種呢?答案是這樣的:
用 "addeventlistener" 可以綁定多次同一個(gè)事件,且都會(huì)執(zhí)行,而在DOM結(jié)構(gòu)如果綁定兩個(gè) "onclick" 事件,只會(huì)執(zhí)行第一個(gè);在腳本通過匿名函數(shù)的方式綁定的只會(huì)執(zhí)行最后一個(gè)事件。
1.
<div id="btn" onclick="clickone()" onclick="clicktwo()"></div> <script> function clickone(){ alert("hello"); } //執(zhí)行這個(gè) function clicktwo(){ alert("world!"); } </script>
2.
<div id="btn"></div> <script> document.getElementById("btn").onclick = function(){ alert("hello"); } document.getElementById("btn").onclick = function(){ alert("world"); } //執(zhí)行這個(gè) </script>
3.
<div id="btn"></div> <script> document.getElementById("btn").addeventlistener("click",clickone,false); function clickone(){ alert("hello"); } //先執(zhí)行 document.getElementById("btn").addeventlistener("click",clicktwo,false); function clicktwo(){ alert("world"); } //后執(zhí)行 </script>
以上;可根據(jù)場景靈活選擇。
PS:關(guān)于javascript常用事件及相關(guān)說明還可參考本站在線工具:
javascript事件與功能說明大全:
http://tools.jb51.net/table/javascript_event
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript事件相關(guān)操作與技巧大全》、《JavaScript時(shí)間與日期操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- JS中動(dòng)態(tài)添加事件(綁定事件)的代碼
- JavaScript給按鈕綁定點(diǎn)擊事件(onclick)的方法
- Javascript 事件流和事件綁定
- javascript事件委托的方式綁定詳解
- js移除事件 js綁定事件實(shí)例應(yīng)用
- javascript attachEvent綁定多個(gè)事件執(zhí)行順序問題
- js 綁定帶參數(shù)的事件以及手動(dòng)觸發(fā)事件
- JS 事件綁定函數(shù)代碼
- javascript閉包傳參和事件的循環(huán)綁定示例探討
- javascript 處理事件綁定的一些兼容寫法
- JS中批量給元素綁定事件過程中的相關(guān)問題使用閉包解決
相關(guān)文章
echarts實(shí)現(xiàn)雷達(dá)圖的詳細(xì)步驟
這篇文章主要給大家介紹了關(guān)于echarts實(shí)現(xiàn)雷達(dá)圖的詳細(xì)步驟,雷達(dá)圖(Radar?Chart)是一種信息豐富的可視化工具,其中多個(gè)變量(三個(gè)或更多)在二維平面上進(jìn)行比較,文中給出了完整的代碼示例,需要的朋友可以參考下2024-01-01JavaScript實(shí)現(xiàn)網(wǎng)頁電子時(shí)鐘
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)網(wǎng)頁電子時(shí)鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06JS實(shí)現(xiàn)網(wǎng)頁時(shí)鐘特效
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)網(wǎng)頁時(shí)鐘特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03js實(shí)現(xiàn)動(dòng)畫特效的文字鏈接鼠標(biāo)懸停提示的方法
這篇文章主要介紹了js實(shí)現(xiàn)動(dòng)畫特效的文字鏈接鼠標(biāo)懸停提示的方法,實(shí)例分析了javascript操作css的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03jquery方法+js一般方法+js面向?qū)ο蠓椒▽?shí)現(xiàn)拖拽效果
多種方法制作的div拖拽,簡單實(shí)用,包括了jquery方法、js一般方法、js面向?qū)ο蠓椒?/div> 2012-08-08ES6學(xué)習(xí)教程之對(duì)象的擴(kuò)展詳解
這篇文章主要給大家介紹了ES6中對(duì)象擴(kuò)展的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-05-05最新評(píng)論