javascript中為某個(gè)元素指定事件的三種方式
在javascript中,可以為某個(gè)元素指定事件,指定的方式有以下三種:
1、在html中,使用onclick屬性
2、在javascript中,使用onclick屬性
3、在javascipt中,使用addEvenListener()方法
三種方法的比較
(1)在第二、三種方法中,可以向函數(shù)傳入一個(gè)event對(duì)象,并讀取其相應(yīng)屬性,而方法一不可以。
(2)首選第二、三種,第一種不利于將內(nèi)容與事件分離,也不能使用event對(duì)象的相關(guān)內(nèi)容。
一些語法細(xì)節(jié)
(1)在第一種方法中,onclick大小寫無關(guān),但在第二種方法中,必須使用小寫。因?yàn)镠MTL對(duì)大小寫不敏感,而JS則會(huì)區(qū)分大小寫。
(2)在第二、三種方法中,指定函數(shù)名時(shí)沒有雙引號(hào),而第一種作為一個(gè)HTML屬性,需要雙引號(hào)。
(3)第一種方法需要括號(hào),第二、三種不需要。
onclick="clickHandler()" document.getElementById("jsOnClick").onclick = clickHandler2; document.getElementById("addEventListener").addEventListener("click", clickHandler2);
完整代碼如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Even Deom</title> </head> <body> <button id="htmlOnClick" onclick="clickHandler()">htmlOnClick</button> <button id="jsOnClick">jsOnClick</button> <button id="addEventListener">addEventListener</button> <script defer> function clickHandler() { alert("onclick attribute in html"); } function clickHandler2(e) { alert(e.target.innerHTML); } document.getElementById("jsOnClick").onclick = clickHandler2; document.getElementById("addEventListener").addEventListener("click", clickHandler2); </script> </body> </html>
在javascript中,可以為某個(gè)元素指定事件,指定的方式有以下三種:
1、在html中,使用onclick屬性
2、在javascript中,使用onclick屬性
(1)注意函數(shù)名沒有雙引號(hào)。
3、在javascipt中,使用addEvenListener()方法
三種方法的比較
(1)在第二、三種方法中,可以向函數(shù)傳入一個(gè)event對(duì)象,并讀取其相應(yīng)屬性,而方法一不可以。
一些語法細(xì)節(jié)
(1)在第一種方法中,onclick大小寫無關(guān),但在第二種方法中,必須使用小寫。因?yàn)镠MTL對(duì)大小寫不敏感,而JS則會(huì)區(qū)分大小寫。
(2)在第二、三種方法中,指定函數(shù)名時(shí)沒有雙引號(hào),而第一種作為一個(gè)HTML屬性,需要雙引號(hào)。
(3)第一種方法需要括號(hào),第二、三種不需要。
onclick="clickHandler()" document.getElementById("jsOnClick").onclick = clickHandler2; document.getElementById("addEventListener").addEventListener("click", clickHandler2);
完整代碼如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Even Deom</title> </head> <body> <button id="htmlOnClick" onclick="clickHandler()">htmlOnClick</button> <button id="jsOnClick">jsOnClick</button> <button id="addEventListener">addEventListener</button> <script defer> function clickHandler() { alert("onclick attribute in html"); } function clickHandler2(e) { alert(e.target.innerHTML); } document.getElementById("jsOnClick").onclick = clickHandler2; document.getElementById("addEventListener").addEventListener("click", clickHandler2); </script> </body> </html>
相關(guān)文章
javascript中使用replaceAll()函數(shù)實(shí)現(xiàn)字符替換的方法
第一次發(fā)現(xiàn)JavaScript中replace()?方法如果直接用str.replace("-","!")?只會(huì)替換第一個(gè)匹配的字符.2010-12-12JS 有趣的eval優(yōu)化輸入驗(yàn)證實(shí)例代碼
這篇文章介紹了eval優(yōu)化輸入驗(yàn)證實(shí)例代碼,有需要的朋友可以參考一下2013-09-09在localStorage中存儲(chǔ)對(duì)象數(shù)組并讀取的方法
頻繁ajax請(qǐng)求導(dǎo)致頁面響應(yīng)變慢,所以考慮將數(shù)據(jù)存儲(chǔ)在window.storage中,這樣只需請(qǐng)求一次ajax,接下來通過本文給大家介紹了在localStorage中存儲(chǔ)對(duì)象數(shù)組并讀取的方法,需要的朋友可以參考下2016-09-09js中eval()函數(shù)和trim()去掉字符串左右空格應(yīng)用
對(duì)于js中eval()函數(shù)的理解和寫一個(gè)函數(shù)trim()去掉字符串左右空格;對(duì)于js中eval()函數(shù)的理解是本人心得不一定正確,感興趣的朋友參考下,或許對(duì)你學(xué)習(xí)eval()函數(shù)有所幫助2013-02-02js實(shí)現(xiàn)鼠標(biāo)滑動(dòng)到某個(gè)div禁止?jié)L動(dòng)
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)鼠標(biāo)滑動(dòng)到某個(gè)div禁止?jié)L動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09js中獲取鍵盤事件的簡(jiǎn)單實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猨s中獲取鍵盤事件的簡(jiǎn)單實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10