回顧
事件對象裡包含三個方面的資訊····回看上一篇內容!
事件對象裡的屬性和方法,主要是滑鼠和鍵盤的資訊。
1. 擷取事件類型
事件對象屬性type
2. 擷取按鍵代碼
事件對象屬性keyCode:斷行符號為13,空格為32,後退鍵為8
3. 檢測Shift、Alt、Ctrl鍵
事件對象屬性是否被按下:shiftKey、altKey、ctrlKey
4. 擷取用戶端座標
事件對象屬性clientX和clientY
5. 擷取螢幕座標
事件對象屬性screenX和screenY
事件的類型
根據觸發事件的事物和事件發生的對象,可將瀏覽器中發生的事件分為幾個類型:
一、 滑鼠事件
每個滑鼠事件都會給以下event對象的屬性填入值:
1.座標屬性(如clientX 和 client 等)
2.Type屬性
3.Targer(DOM)或serElement(IE)屬性(目標對象屬性)
4.shiftKey、ctrlKey、altKey和metaKey(DOM)屬性
5.button屬性(只在mouse事件中)
(oEvent.target || oEvent.srcElement).id邏輯符或操作符作用於兩個對象時,第一個對象非空,返回第一個對象,否則返回第二個對象,這裡表示的是引起事件的元素的ID。
二、 鍵盤事件
Keydown --- 在鍵盤上按下某按鍵時發生。一直按著某鍵,它則會不斷觸發。
Keypress --- 按下一個按鍵,併產生一個字元時產生(也就是不管類似Shit ctrl alt之類的鍵。)一直按鍵時,它會持續發生。
Keyup --- 釋放按著的按鍵時發生
1. 事件的屬性
對每個鍵盤事件,會填入以下的事件屬性:
keyCode屬性(鍵位的ASC碼值)
charCode屬性(僅DOM)
target(DOM)與srcElement(IE)屬性
shiftKey、ctrlKey、altKey和metaKey(DOM)屬性
2.順序
當使用者按一次某字元按鍵時,會按以下順序發生事件:
(1)、keydown;
(2)、keypress;
(3)、keyup;
如果使用者按一次某非字元按鍵(例如shift),會按以下順序發生事件:
(1)、keydown;
(2)、keyup;
三、 HTML事件
onload、unload、resize、scroll等事件。
四、 突變事件
文檔或元素元素的子樹的添加刪除節點,目前還沒有任何主流瀏覽器實現了它。