摘要:第三個(gè)參數(shù)表示在冒泡階段調(diào)用事件處理程序,默認(rèn)值為中的事件對(duì)象事件處理程序當(dāng)前程序綁定的那個(gè)元素事件處理程序內(nèi)部,的值始終等于的值事件發(fā)生的具體元素事件類型取消事件的默認(rèn)行為取消事件的進(jìn)一步捕獲或冒泡中的事件對(duì)象事件類型阻止事件進(jìn)一步冒泡取
var EventUtil = { addHandler: function(element, type, handler){ if(element.addEventListener){ // 第三個(gè)參數(shù)表示在冒泡階段調(diào)用事件處理程序,默認(rèn)值為false element.addEventListener(type, handler, false) }else if(element.attachEvent){ element.attachEvent("on"+type, handler) }else { element["on"+type] = handler } }, removeHandler: function(element, type, handler){ if(element.removeHandler){ element.removeHandler(type, handler, false) }else if(element.detachEvent){ element.detachEvent("on"+type, handler) }else { element["on"+ type] = null } }, getEvent: function(event){ return event?event:window.event }, getTarget: function(event){ return event.target || event.srcElement }, preventDefault: function(event){ if(event.preventDefault){ event.preventDefault() }else { event.returnValue = false } }, stopPropagation: function(){ if(event.stopPropagation){ event.stopPropagation() }else { event.cancelBubble = true } } } // DOM中的事件對(duì)象 function DOMEvent(event){ // 事件處理程序(當(dāng)前程序)綁定的那個(gè)元素,事件處理程序內(nèi)部,this的值始終等于currentTarget的值 event.currentTarget // 事件發(fā)生的具體元素 event.target // 事件類型 event.type // 取消事件的默認(rèn)行為 event.preventDefault() // 取消事件的進(jìn)一步捕獲或冒泡 event.stopPropagation() } // IE中的事件對(duì)象 function IEEvent(){ var event = window.event // 事件類型 event.type // 阻止事件進(jìn)一步冒泡 event.cancelBubble = true // 取消事件的默認(rèn)行為 event.returnValue = false // 事件發(fā)生的具體元素 event.srcElement }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/84765.html
摘要:擁有較高的性能,代碼邏輯非常簡單,越來越多的人已開始關(guān)注和使用它注意上面的例子中必須為元素設(shè)置寬度,并且寬度必須小于父容器的寬度絕對(duì)定位實(shí)現(xiàn)垂直居中或者自身高度的一半 水平居中 行內(nèi)或類行內(nèi)元素水平居中 在塊級(jí)父容器中設(shè)置text-align:center 塊級(jí)元素水平居中 塊級(jí)元素設(shè)置margin-left和margin-right為auto(前提是已經(jīng)為元素設(shè)置了width) fl...
摘要:但是通過添加的匿名函數(shù)無法移除,最好是在其他地方定義事件處理程序的函數(shù),然后將該函數(shù)的名稱傳給第二個(gè)參數(shù)。一中的事件對(duì)象對(duì)象兼容級(jí)和級(jí)的瀏覽器將對(duì)象傳入到事件處理程序中。 一、事件流 假設(shè)有如下HTML代碼: Event Click me 其DOM樹如下圖所示:showImg(https://segmentfault.com/img/bVUUWA?w=50...
摘要:本文章需要一些前置知識(shí)事件基礎(chǔ)知識(shí)對(duì)象詳解圍繞著如何更好地實(shí)現(xiàn)一個(gè)跨瀏覽器的事件處理小型庫展開討論。處理垃圾回收過濾觸發(fā)或刪除一些處理程序解綁特定類型的所有事件克隆事件處理程序依照這樣的一個(gè)思路,我們來一步步實(shí)現(xiàn)這樣一個(gè)模塊。 本文章需要一些前置知識(shí) 事件基礎(chǔ)知識(shí) event對(duì)象詳解 圍繞著如何更好地實(shí)現(xiàn)一個(gè)跨瀏覽器的事件處理小型庫展開討論。 1. 初步實(shí)現(xiàn) 在《JavaScrip...
摘要:在事件處理,事件對(duì)象,阻止事件的傳播等方法或?qū)ο蟠嬖谥鵀g覽器兼容性問題,開發(fā)過程中最好編寫成一個(gè)通用的事件處理工具。上面的中事件的執(zhí)行都發(fā)生了目標(biāo)階段事件對(duì)象的屬性用來表示事件處理發(fā)生在事件流哪個(gè)階段。 最近在閱讀javascript高級(jí)程序設(shè)計(jì),事件這一塊還是有很多東西要學(xué)的,就把一些思考和總結(jié)記錄下。在事件處理,事件對(duì)象,阻止事件的傳播等方法或?qū)ο蟠嬖谥鵀g覽器兼容性問題,開發(fā)過程中...
摘要:事件通常與函數(shù)配合使用,當(dāng)事件發(fā)生時(shí)函數(shù)才會(huì)執(zhí)行。的事件流是事件捕獲流,事件由根元素獲取并沿樹向下分發(fā)。通過添加事件,只能用刪除此事件。這主要得益于瀏覽器的事件冒泡機(jī)制。 簡介 事件是可以被 JavaScript 偵測(cè)到的行為。 網(wǎng)頁中的每個(gè)元素都可以產(chǎn)生某些可以觸發(fā) JavaScript 函數(shù)或程序的事件。 事件通常與函數(shù)配合使用,當(dāng)事件發(fā)生時(shí)函數(shù)才會(huì)執(zhí)行。 執(zhí)行JS 事件的方式: ...
閱讀 3679·2021-11-24 09:39
閱讀 1288·2021-09-30 09:48
閱讀 3276·2021-09-09 11:51
閱讀 2900·2021-09-08 10:41
閱讀 1340·2019-08-30 14:06
閱讀 2809·2019-08-30 14:01
閱讀 884·2019-08-29 17:11
閱讀 3183·2019-08-29 15:37