摘要:事件處理程序添加事件獲取事件對(duì)象引用獲取事件的目標(biāo)取消給定事件默認(rèn)行為級(jí),中刪除事件停止事件冒泡獲取相關(guān)元素獲取鼠標(biāo)按鈕信息獲取鼠標(biāo)滾輪增量值的方法獲取鍵吐槽下的語(yǔ)法目前不支持頁(yè)面錨點(diǎn)定位事件處理程序添加事件級(jí)事件處理程序事件處理程序級(jí)事件
事件處理程序
添加事件
獲取事件對(duì)象引用
獲取事件的目標(biāo)
取消給定事件默認(rèn)行為 DOM0級(jí),IE中
刪除事件
停止事件冒泡
獲取相關(guān)元素
獲取鼠標(biāo)按鈕信息
獲取鼠標(biāo)滾輪增量值(delta)的方法
獲取鍵
吐槽下segmentfault的markdown語(yǔ)法目前不支持頁(yè)面錨點(diǎn)定位事件處理程序 添加事件
var EventUtil = { addEvent: function(element, type, handler){ if(element.addEventListener){ element.addEventListener(type, handler, false);//DOM2級(jí)事件處理程序 }else if(element.attachEvent){ element.attach("on" + type, handler);//IE事件處理程序 }else{ element["on" + type] = handler;//DOM0級(jí)事件處理程序 } },獲取事件對(duì)象引用
getEvent: function(event){ //return event || window.event; return event ? event : window.event; },獲取事件的目標(biāo)
getTarget: function(event){ return event.target || event.srcElement; },取消給定事件默認(rèn)行為 DOM0級(jí),IE中
preventDefault: function(event){ if (event.preventDefault){ event.preventDefault(); } else { event.returnValue = false; } },刪除事件
removeEvent: function(element, type, handler){ if(element.removeEventListener){ element.removeEventListener(type, handler, false) }else if(element.detachEvent){ element.detachEvent("on" + type, handler) }else{ element["on" + type] = null; } },停止事件冒泡
stopPropagation: function(event){ if(event.stopPropagation){ event.stopPropagation(); } else { event.cancelBubble = true; } },獲取相關(guān)元素
這個(gè)屬性只對(duì)于mouseover和mouseout事件才包含值;
對(duì)于其他事件,這個(gè)屬性值是null;
getRelatedTarget: function(e){ if(e.relatedTarget){ return e.relatedTarget; } else if(e.toElement){ return e.toElement; } else if(e.fromElement){ return e.fromElement; } else { return null; } },獲取鼠標(biāo)按鈕信息
{ 0:主鼠標(biāo)按鈕,1:中間的鼠標(biāo)按鈕(滾輪按鈕),2:次鼠標(biāo)按鈕}
getMouseButton: function(event){ if(document.implementation.hasFeature("MouseEvents", "2.0")){ return event.button; } else { // IE8及之前版本的button屬性,轉(zhuǎn)換為DOM版鼠標(biāo)事件的button屬性 switch(event.button){ case 0: case 1: case 3: case 5: case 7: return 0; case 2: case 6: return 2; case 4: return 1; } } },獲取鼠標(biāo)滾輪增量值(delta)的方法
getWheelDelta: function(event){ if(event.wheelDelta){ return (client.engine.opera && client.engine.opera < 9.5) ? -event.wheelDelta : event.wheelDelta; } else { return -event.detail * 40; } },獲取鍵
getCharCode: function(event){ if(typeof event.charCode == "number"){ return event.charCode; } else { return event.keyCode; } }
}
發(fā)表在掘金的鏈接
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/108204.html
摘要:題目來(lái)源前端實(shí)習(xí)生面試總結(jié)最近開(kāi)始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來(lái)進(jìn)行一個(gè)總結(jié),同樣也希望對(duì)正在準(zhǔn)備面實(shí)習(xí)生的童鞋們有所幫助最后一個(gè)參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎(chǔ)的書(shū)多碼代碼準(zhǔn)備找實(shí)習(xí),在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實(shí)習(xí)生面試題自己整理一下。 題目來(lái)源:前端實(shí)習(xí)生面試總結(jié)最近開(kāi)始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...
摘要:題目來(lái)源前端實(shí)習(xí)生面試總結(jié)最近開(kāi)始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來(lái)進(jìn)行一個(gè)總結(jié),同樣也希望對(duì)正在準(zhǔn)備面實(shí)習(xí)生的童鞋們有所幫助最后一個(gè)參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎(chǔ)的書(shū)多碼代碼準(zhǔn)備找實(shí)習(xí),在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實(shí)習(xí)生面試題自己整理一下。 題目來(lái)源:前端實(shí)習(xí)生面試總結(jié)最近開(kāi)始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...
摘要:題目來(lái)源前端實(shí)習(xí)生面試總結(jié)最近開(kāi)始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來(lái)進(jìn)行一個(gè)總結(jié),同樣也希望對(duì)正在準(zhǔn)備面實(shí)習(xí)生的童鞋們有所幫助最后一個(gè)參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎(chǔ)的書(shū)多碼代碼準(zhǔn)備找實(shí)習(xí),在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實(shí)習(xí)生面試題自己整理一下。 題目來(lái)源:前端實(shí)習(xí)生面試總結(jié)最近開(kāi)始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...
摘要:調(diào)用通過(guò)注冊(cè)表調(diào)用到實(shí)例,透過(guò)的,調(diào)用到中的,最后通過(guò),調(diào)用,根據(jù)參數(shù)相應(yīng)模塊執(zhí)行。京東的,多端解決方案是一套遵循語(yǔ)法規(guī)范的多端開(kāi)發(fā)解決方案。 showImg(https://segmentfault.com/img/bVbuMkw?w=1304&h=808); 對(duì)于一項(xiàng)技術(shù),我們不能停留在五分鐘狀態(tài),特別喜歡一句話,用什么方式繪制UI界面一點(diǎn)不重要,重要的是底層的思維,解決問(wèn)題和優(yōu)化...
閱讀 2227·2021-11-16 11:45
閱讀 1400·2021-10-22 09:53
閱讀 4153·2021-09-07 10:26
閱讀 1327·2021-09-06 15:00
閱讀 2147·2019-08-28 18:09
閱讀 2911·2019-08-26 14:06
閱讀 4161·2019-08-26 13:48
閱讀 1377·2019-08-26 12:11