第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

章節(jié)
問答
課簽
筆記
評論
占位
占位

事件對象

既然可以冒泡,相應(yīng)的也應(yīng)該可以停止

這里需要利用到事件的特有對象 - 事件對象,事件對象是JavaScript中一個非常重要的對象,用來表示當前事件。event 對象的屬性和方法包含了當前事件的狀態(tài)。

當前事件,是指正在發(fā)生的事件;
狀態(tài),是與事件有關(guān)的性質(zhì),如引發(fā)事件的 DOM 元素、鼠標的狀態(tài)、按下的鍵等等。

event 對象只在事件發(fā)生的過程中才有效,事件對象提供了 preventDefault,stopPropagation2 個方法一個停止事件傳播,一個傳遞默認的行為(暫且無視IE),jQuery 提供了個萬能的 return false 不僅可以阻止事件冒泡,還可以阻止瀏覽器的默認行為,還可以減少 IE 系列的 bug。其實就是根據(jù)返回的布爾值調(diào)用 preventDefault,stopPropagation 方法,下面會提到 e.stopImmediatePropagation 方法不僅阻止了一個事件的冒泡,也把這個元素上的其他綁定事件也阻止了。

瀏覽器的實現(xiàn)差異:
在 W3C 規(guī)范中,event 對象是隨事件處理函數(shù)傳入的,Chrome、FireFox、Opera、Safari、IE9.0及其以上版本都支持這種方式。但是對于 IE8.0 及其以下版本,event 對象必須作為 window 對象的一個屬性。
在遵循 W3C 規(guī)范的瀏覽器中,event 對象通過事件處理函數(shù)的參數(shù)傳入,event 的某些屬性只對特定的事件有意義。比如,fromElement 和 toElement 屬性只對 onmouseover 和 onmouseout 事件有意義。
特別指出:分析的版本是2.1.1,已經(jīng)不再兼容 IE6-7-8了,所以部分兼容問題都已經(jīng)統(tǒng)一,例如:事件綁定的接口,事件對象的獲取等等,我們源碼分析的重點不在使用,而是設(shè)計的思路。
注:事件對象具體有些什么方法屬性參照 http://www.itxueyuan.org/view/6340.html。

事件對象中我們用的最多的就是 target了,這個是我們的點擊對象,別忘記了還有個 currentTarget 這個是事件的綁定對象,有什么區(qū)別?

<div id="aaron">
   <div>
     <p>Click me!</p>
   </div>
</div>
var aaron = document.getElementById('aaron')
aaron.addEventListener('click',function(e){
    console.log(this,this == e.currentTarget,e)
},false)

如上結(jié)構(gòu),currentTarget 是 aaron 的 div 元素 , target 是 p 元素,事件對象是有作用域的 currentTarget 是等于 this 的。
事件對象的基礎(chǔ)大家都是知道了,jQuery為了實現(xiàn)統(tǒng)一的事件對象調(diào)用與委托的的處理,將事件對象單獨重寫,這樣如果用戶做了任何的行為處理 jQuery 內(nèi)部都能獲取到狀態(tài)值,從而用來處理同一個元素綁定多個模擬事件的判斷處理。這也是重寫后的一個重要意義。

任務(wù)

?不會了怎么辦
||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數(shù)過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務(wù)號

綁定后可得到

  • · 粉絲專屬優(yōu)惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復(fù)提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關(guān)注公眾號
關(guān)注后,及時獲悉本課程動態(tài)

舉報

0/150
提交
取消
全部 精華 我要發(fā)布
全部 我要發(fā)布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發(fā)表

為什么扣積分?

本次提問將花費2個積分

繼續(xù)發(fā)表請點擊 "確定"

為什么扣積分?