事件:可以被JavaScript偵測(cè)到的行為
onClick 單擊事件
onMouseOver 鼠標(biāo)經(jīng)過事件
onMouseOut 鼠標(biāo)移出事件
onChange 文本內(nèi)容改變事件
onSelect 文本框選中事件
onFocus 光標(biāo)聚集事件
onBlur 移開光標(biāo)事件
onLoad 網(wǎng)頁(yè)加載時(shí)間
onUnload 關(guān)閉網(wǎng)頁(yè)事件
事件流
描述的是頁(yè)面中接受事件的順序
事件冒泡:由最具體的元素就收,然后逐級(jí)向上傳播至最不具體的元素的節(jié)點(diǎn)(文檔)
事件捕獲:最不具體的節(jié)點(diǎn)先接收事件,而最具體的節(jié)點(diǎn)應(yīng)該是最后接收事件
事件處理
1.HTML事件處理:
直接添加到HTML結(jié)構(gòu)中
<div id="div">
<button id="btn1" onclick="demo()">按鈕</button>
</div>
<script>
function demo(){
alert("Hello html事件處理");
}
</script>
弊端:修改時(shí),需修改兩處
2.DOM0級(jí)事件處理
把一個(gè)函數(shù)賦值給一個(gè)事件處理程序?qū)傩? <div id="div">
<button id="btn1" onclick="demo()">按鈕</button>
</div>
<script>
var btn1 = document.getElementById("btn1");
btn1.onclick = function (){alert("Hello DOM0級(jí)事件處理程序1")};//被覆蓋掉
btn1.onclick = function (){alert("Hello DOM0級(jí)事件處理程序2")};
btn1.onclick = function (){alert("Hello DOM0級(jí)事件處理程序3")};
btn1.onclick = null;
</script>
弊端:事件1、2 會(huì)被3覆蓋掉
3.DOM2級(jí)事件處理
addEventListener("事件名","事件處理函數(shù)","布爾值")
true:事件捕獲
false:事件冒泡
removeEventListener();
<div id="div">
<button id="btn1" onclick="demo()">按鈕</button>
</div>
<script>
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click",demo1);
btn1.addEventListener("click",demo2);
function demo1(){
alert("Hello DOM2級(jí)事件處理程序1");
}
function demo2(){
alert("Hello DOM2級(jí)事件處理程序2");
}
btn1.removeEventListener("click",demo1);
btn1.removeEventListener("click",demo2);
</script>
事件1、2不會(huì)覆蓋,會(huì)依次出現(xiàn)
4.IE事件處理程序 小于IE8
attachEvent 添加事件
detachEvent 移除事件
<div id="div">
<button id="btn1" onclick="demo()">按鈕</button>
</div>
<script>
var btn1 = document.getElementById("btn1");
if(btn1.addEventListener){
btn1.addEventListener("click",demo);
}else if(btn1.attachEvent){//IE
btn1.attachEvent("onclick",demo);
}else{
btn1.onclick = demo();
}
function demo(){
alert("Hello");
}
</script>
JS事件
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- HTML 學(xué)習(xí)筆記 May 13,2017 js事件驅(qū)動(dòng)機(jī)制、js事件分類、js訪問css技術(shù)、js事件驅(qū)動(dòng)機(jī)制深...
- HTML 學(xué)習(xí)筆記 May 12,2017 JS 面向?qū)ο笕筇卣鳎ǚ庋b、繼承、多態(tài))、多態(tài)經(jīng)典案例、補(bǔ)講閉包細(xì)節(jié)...
- 事件類型 Web瀏覽器可能發(fā)生的事件類型有很多。不同的事件類型具有不同的信息,而“DOM3級(jí)事件“規(guī)定了以下幾類事...
- 焦點(diǎn)事件焦點(diǎn)事件會(huì)在頁(yè)面元素獲得或失去焦點(diǎn)時(shí)觸發(fā)。確定瀏覽器是否支持該類事件! var isSu...
- 白云藍(lán)天青草地, 陽(yáng)光斜照著,暖暖的。 場(chǎng)上五彩繽紛, 紅黃的球衣與綠草拼湊成美麗的畫卷。 白色的界線與龍門成了畫...