事件:node
Javascript偵測到的用戶的操做或是頁面的一些行爲。瀏覽器
事件源:函數
引起事件的元素。性能
事件綁定的方法有兩種:對象
1.普通事件:在腳本中綁定或直接在HTML元素綁定。seo
2.同一個事件綁定多個事件處理程序(兩種):事件
IE:ip
對象:attachEvent('事件(on)',move)--添加rem
對象:detachEvent('事件',"處理程序")--刪除get
普通:
對象.addEventlistener("事件","處理程序",布爾值)--添加
對象.removeEventlistener("事件","處理程序",布爾值)--刪除
事件對象:
用來記錄一些事件引起相關信息的對象。
1.只有當事件發生時的時候才產生,只能在處理函數內部訪問
2.處理函數運行結束後自動刪除。
獲取事件對象:
IE:window.event
FF:對象.on事件 = function(e){}
事件流:
當頁面元素觸發事件的時候,該元素的容器以及整個頁面都會按照特定順序響應該元素觸發的事件,事件傳播的順序叫作事件流程。
事件流分類:
一、冒泡事件(全部瀏覽器都支持):由明確的事件源到最不肯定的事件源依次向上觸發
二、捕獲事件(IE不支持):不肯定的事件源到明確色事件源依次向下觸發
阻止事件流(事件對象):
IE: 事件對象.cancelBubble = true;
FF:事件對象.stopPropagation();
阻止默認事件:
一、return false (HTML,DOM0級)
二、event.preventDefault()
三、event.returnValue = false
事件委託:
就是讓別人來完成這個事件,能夠提升性能
Eg:
oUl.onmouseover = function(ev){
var ev = ev || window.event;
var target = ev.target || ev.srcElement;
if(target.nodeName.toLowerCase() == 'li'){
target.style.background = 'red'
}
}
關於鍵盤事件:
keyCode 得到鍵盤碼
空格:32 回車:13 左上右下:37 38 39 40
altKey 判斷alt鍵是否被按下,按下時true反之FALSE 布爾值
ctrlKey
shiftKey
type 用來檢測事件的類型,主要用於多個事件通用一個事件處理程序的時候
但願以上有關於事件的內容對你們能有幫助!