ie8不支持currentTarget的解決辦法
阿新 • • 發佈:2018-01-09
鍵盤 bubble turn src ntp 描述 col 常用 code
一般綁定事件時,我們都會在事件回調方法裏用event.currentTarget獲取當前對象,但到ie8裏就獲取不到了。
解決方法如下:
var eve = event || window.event; //獲取事件對象
var objEle = eve.target || eve.srcElement; //獲取document 對象的引用
屬性 | 描述 | IE | 非IE | W3C |
---|---|---|---|---|
altKey | 返回當事件被觸發時,"ALT" 是否被按下。 | Yes | Yes | Yes |
button | 返回當事件被觸發時,哪個鼠標按鈕被點擊。 |
Yes | Yes | Yes |
clientX | 返回當事件被觸發時,鼠標指針的水平坐標。 | Yes | Yes | Yes |
clientY | 返回當事件被觸發時,鼠標指針的垂直坐標。 | Yes | Yes | Yes |
ctrlKey | 返回當事件被觸發時,"CTRL" 鍵是否被按下。 | Yes | Yes | Yes |
metaKey | 返回當事件被觸發時,"meta" 鍵是否被按下。 | No | Yes | Yes |
relatedTarget |
返回與事件的目標節點相關的節點。 | No | Yes | Yes |
screenX | 返回當某個事件被觸發時,鼠標指針的水平坐標。 | Yes | Yes | Yes |
screenY | 返回當某個事件被觸發時,鼠標指針的垂直坐標。 | Yes | Yes | Yes |
shiftKey | 返回當事件被觸發時,"SHIFT" 鍵是否被按下。 | Yes | Yes | Yes |
bubbles | 返回布爾值,指示事件是否是起泡事件類型。 | No | Yes | Yes |
cancelable | 返回布爾值,指示事件是否可擁可取消的默認動作。 | No | Yes | Yes |
currentTarget | 返回其事件監聽器觸發該事件的元素。 | No | Yes | Yes |
eventPhase | 返回事件傳播的當前階段。 | Yes | ||
target | 返回觸發此事件的元素(事件的目標節點)。 | No | Yes | Yes |
timeStamp | 返回事件生成的日期和時間。 | No | Yes | Yes |
type | 返回當前 Event 對象表示的事件的名稱。 | Yes | Yes | Yes |
方法 | 描述 | IE | 非IE | W3C |
initEvent() | 初始化新創建的 Event 對象的屬性。 | No | Yes | Yes |
preventDefault() | 通知瀏覽器不要執行與事件關聯的默認動作。 | No | Yes | Yes |
stopPropagation() | 不再派發事件。 | No | Yes | Yes |
除了上面W3C規範所規定的屬性和方法外,IE瀏覽器還支持以下屬性。
屬性 | 描述 |
---|---|
cancelBubble | 如果事件句柄想阻止事件傳播到包容對象,必須把該屬性設為 true。 |
fromElement | 對於 mouseover 和 mouseout 事件,fromElement 引用移出鼠標的元素。 |
keyCode | 對於 keypress 事件,該屬性聲明了被敲擊的鍵生成的 Unicode 字符碼。對於 keydown 和 keyup 事件,它指定了被敲擊的鍵的虛擬鍵盤碼。虛擬鍵盤碼可能和使用的鍵盤的布局相關。 |
offsetX,offsetY | 發生事件的地點在事件源元素的坐標系統中的 x 坐標和 y 坐標。 |
returnValue | 如果設置了該屬性,它的值比事件句柄的返回值優先級高。把這個屬性設置為 fasle,可以取消發生事件的源元素的默認動作。 |
srcElement | 對於生成事件的 Window 對象、Document 對象或 Element 對象的引用。 |
toElement | 對於 mouseover 和 mouseout 事件,該屬性引用移入鼠標的元素。 |
x,y | 事件發生的位置的 x 坐標和 y 坐標,它們相對於用CSS動態定位的最內層包容元素。 |
ie8不支持currentTarget的解決辦法