上篇介紹完咱們js的事件流的概念以後,相信你們對事件流也有所瞭解了。那麼接下來咱們看一下jquery的事件操做。
jquery
在說jquery的每一個事件以前,咱們先來看一下事件對象瀏覽器
Event 對象表明事件的狀態,好比事件在其中發生的元素、鍵盤按鍵的狀態、鼠標的位置、鼠標按鈕的狀態。函數
例如: 當用戶單擊某個元素的時候,咱們給這個元素註冊的事件就會觸發,該事件的本質就是一個函數,而該函數的形參接收一個event對象spa
2.事件一般與函數結合使用,函數不會在事件發生前被執行!指針
因爲微軟和網景亂搞,後來必需要爲事件傳播機制,制定一個標準,由於事件捕獲是網景公司開發出來的,而事件冒泡是由微軟公司開發出來的,它們都想要本身的技術成爲標準,因此致使這兩個公司總是幹架,制定標準的人爲了避免讓它們幹架,因此研發了事件流.code
target
來獲取到(IE暫且不談),或者想阻止瀏覽器的默認行爲能夠經過方法preventDefault()
來進行阻止.如下是event對象的一些屬性和方法屬性 | 描述 |
---|---|
altKey | 返回當事件被觸發時,」ALT」 是否被按下。 |
button | 返回當事件被觸發時,哪一個鼠標按鈕被點擊。 |
clientX | 返回當事件被觸發時,鼠標指針的水平座標。 |
clientY | 返回當事件被觸發時,鼠標指針的垂直座標。 |
ctrlKey | 返回當事件被觸發時,」CTRL」 鍵是否被按下。 |
metaKey | 返回當事件被觸發時,」meta」 鍵是否被按下。 |
relatedTarget | 返回與事件的目標節點相關的節點。 |
screenX | 返回當某個事件被觸發時,鼠標指針的水平座標。 |
screenY | 返回當某個事件被觸發時,鼠標指針的垂直座標。 |
shiftKey | 返回當事件被觸發時,」SHIFT」 鍵是否被按下 |
IE
屬性(除了上面的鼠標/事件屬性,IE 瀏覽器還支持下面的屬性)屬性 | 描述 |
---|---|
cancelBubble |
若是事件句柄想阻止事件傳播到包容對象,必須把該屬性設爲 true。 |
fromElement | 對於 mouseover 和 mouseout 事件,fromElement 引用移出鼠標的元素。 |
keyCode | 對於 keypress 事件,該屬性聲明瞭被敲擊的鍵生成的 Unicode 字符碼。對於 keydown 和 keyup |
offsetX,offsetY | 發生事件的地點在事件源元素的座標系統中的 x 座標和 y 座標。 |
returnValue |
若是設置了該屬性,它的值比事件句柄的返回值優先級高。把這個屬性設置爲 |
srcElement |
對於生成事件的 Window 對象、Document 對象或 Element 對象的引用。 |
toElement | 對於 mouseover 和 mouseout 事件,該屬性引用移入鼠標的元素。 |
x,y | 事件發生的位置的 x 座標和 y 座標,它們相對於用CSS動態定位的最內層包容元素。 |
屬性和方法 | 描述 |
---|---|
bubbles | 返回布爾值,指示事件是不是起泡事件類型。 |
cancelable |
返回布爾值,指示事件是否可擁可取消的默認動做。 |
currentTarget |
返回其事件監聽器觸發該事件的元素。 |
eventPhase | 返回事件傳播的當前階段。 |
target |
返回觸發此事件的元素(事件的目標節點)。 |
timeStamp | 返回事件生成的日期和時間。 |
type |
返回當前 Event 對象表示的事件的名稱。 |
initEvent() | 初始化新建立的 Event 對象的屬性。 |
preventDefault() |
通知瀏覽器不要執行與事件關聯的默認動做。 |
stopPropagation() |
再也不派發事件。 |
event || (event = window.event);
event.target||event.srcElement
event.preventDefault ? event.preventDefault() : (event.returnValue = false);
event.stopPropagation ? event.stopPropagation() : (event.cancelBubble = true);