一.(1)事件源(事件目標(biāo)):在哪個組件上發(fā)生的事件,也就是發(fā)生事件的作用體或與之相關(guān)的對象。任何元素,body,html元素等等,都可以作為事件源。
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站制作、成都網(wǎng)站建設(shè)與策劃設(shè)計(jì),龍江網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:龍江等地區(qū)。龍江做網(wǎng)站價格咨詢:18980820575(2)事件:事件就是用戶或?yàn)g覽器自身執(zhí)行的某種動作。比如:click,load,等等都是事件的名字。
(3)事件類型:表單事件,window事件,鼠標(biāo)事件,鍵盤事件等。
常用表單事件:
focus(不冒泡,IE和ES5支持冒泡的focusin) 焦點(diǎn)事件,blur(不冒泡,IE和ES5支持冒泡的focusout) 失去焦點(diǎn)事件,submit 提交事件,change 改變事件,input 文本輸入事件;
常用的window事件:
load 加載事件 ,unload 關(guān)閉事件,beforeunload 關(guān)閉之前的事件。DOMContentLoaded,它在DOM加載之后及資源加載之前被觸發(fā)事件。 readyStatechage 當(dāng)頁面加載狀態(tài)改變事件.
常用的鼠標(biāo)事件:
click 單擊事件,dbclick 雙擊事件,textcontentmenu 文本菜單事件,mouseover 鼠標(biāo)放上事件,mouseout 鼠標(biāo)離開事件,mousedown 鼠標(biāo)按下事件,mouseup 鼠標(biāo)抬起事件,mousemove 鼠標(biāo)移動事件,mouseenter 鼠標(biāo)移入事件,mouseleave 鼠標(biāo)移除事件
常用鍵盤事件:
keypress 鍵盤事件,keyup 鍵盤抬起事件, keydown 鍵盤按下事件,
(4)事件傳播:指瀏覽器決定哪個對象觸發(fā)其事件處理程序的過程。
(5)事件流:指的是從頁面接收事件的順序,IE的事件流是事件冒泡流,而Netscape Communication的事件流是事件捕獲流。事件在DOM中傳播的順序有兩種類型:事件捕獲和事件冒泡。
(6)DOM2級事件標(biāo)準(zhǔn)規(guī)定了事件流包括三個階段:事件捕獲階段,處于目標(biāo)階段,事件冒泡階段。在DOM2級事件模型中,一旦事件被觸發(fā),事件流首先從DOM樹頂部(文檔節(jié)點(diǎn))向下傳播,直到目標(biāo)節(jié)點(diǎn),然后再從目標(biāo)節(jié)點(diǎn)向上傳播到DOM樹頂。從上到下的過程被稱為捕獲階段(該階段包括從文檔到目標(biāo)節(jié)點(diǎn)的父節(jié)點(diǎn)范圍內(nèi)的所有節(jié)點(diǎn)),從下到上的過程被稱為冒泡階段,包括從目標(biāo)節(jié)點(diǎn)的父節(jié)點(diǎn)返回到文檔的行程中遇到的節(jié)點(diǎn)(即就是事件開始由文檔中嵌套層次最深的那個具體的元素節(jié)點(diǎn)接收,然后逐漸向上級傳播到較不具體的節(jié)點(diǎn))。如圖
第一部分稱為捕獲階段,捕獲階段的主要任務(wù)是建立傳播路徑,在冒泡階段,事件會通過這個路徑回溯到文檔跟節(jié)點(diǎn)。第二部分稱為目標(biāo)階段,該階段僅包括目標(biāo)節(jié)點(diǎn)(圖中的div節(jié)點(diǎn)),事件在目標(biāo)節(jié)點(diǎn)上被觸發(fā)。第三部分稱為冒泡階段,事件在目標(biāo)元素上觸發(fā)后,并不在這個元素上終止,同一個事件會依次在目標(biāo)節(jié)點(diǎn)的父節(jié)點(diǎn),父節(jié)點(diǎn)的父節(jié)點(diǎn)...直到最外層的節(jié)點(diǎn)上被觸發(fā)。舉一個例子,來說明事件流的三個階段:如圖:
當(dāng)點(diǎn)擊最里層的span元素時,事件流首先從DOM樹頂部(文檔節(jié)點(diǎn))向下傳播,直到目標(biāo)節(jié)點(diǎn)(如上圖例中的span元素),然后再從目標(biāo)節(jié)點(diǎn)向上傳播到DOM樹頂。從上到下的這個搜索dom樹的過程,就是捕獲階段,而從下到上的span元素被選中,一直彈出對話框html元素被選中,這就是同一個事件的冒泡過程被稱為冒泡階段,也就是事件在目標(biāo)元素上觸發(fā)后,并不在這個元素上終止,會一直向上冒泡,直到最外層的節(jié)點(diǎn)上。
不過,并非每個事件對象都參與事件流的所有三個階段。而對于事件冒泡,在必要的時候還是需要相應(yīng)的處理,這兩個問題后期再繼續(xù)學(xué)習(xí)研究。
(7)事件處理程序(事件監(jiān)聽程序):處理或者響應(yīng)事件的函數(shù)。事件處理程序的名字以”on”開開頭,比如click事件的處理程序就是onclick,
(8)事件對象(event):是與特定事件相關(guān)且包含有關(guān)該事件詳細(xì)信息的對象。事件對象作為參數(shù)傳遞給事件處理程序函數(shù)。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。