<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        JavaScript事件對象event用法分析

        來源:懂視網 責編:小采 時間:2020-11-27 22:11:00
        文檔

        JavaScript事件對象event用法分析

        JavaScript事件對象event用法分析:本文實例講述了JavaScript事件對象event用法。分享給大家供大家參考,具體如下: 前面的文章已經介紹了JavaScript為事件指定處理程序的五種方式。 下面繼續介紹JavaScript的事件對象event。 事件對象event包含導致事件的元素、事件的類型以及其他與特定事件相
        推薦度:
        導讀JavaScript事件對象event用法分析:本文實例講述了JavaScript事件對象event用法。分享給大家供大家參考,具體如下: 前面的文章已經介紹了JavaScript為事件指定處理程序的五種方式。 下面繼續介紹JavaScript的事件對象event。 事件對象event包含導致事件的元素、事件的類型以及其他與特定事件相

        本文實例講述了JavaScript事件對象event用法。分享給大家供大家參考,具體如下:

        前面的文章已經介紹了JavaScript為事件指定處理程序的五種方式。

        下面繼續介紹JavaScript的事件對象event。

        事件對象event包含導致事件的元素、事件的類型以及其他與特定事件相關的信息。

        1、DOM中的事件對象

        屬性/方法 類型 說明
        bubbles Boolean 表明事件是否冒泡
        cancelabel Boolean 表明是否可以取消事件的默認行為
        currentTarget Element 事件處理程序當前正在處理事件的那個元素(監聽事件的那個元素)
        defaultPrevented Boolean true表示已經調用了preventDefault()
        detail Integer 與事件相關的細節信息
        eventPhase Integer 調用事件處理程序的階段:1表示捕獲階段,2表示處于目標,3表示冒泡階段
        preventDefault() Function 取消事件的默認行為,cancelable為true才可使用此方法
        stopImmediatePropagation() Function 取消事件的捕獲或冒泡,同時阻止任何事件處理程序被調用
        stopPropagation() Function 取消事件的捕獲或冒泡,bubbles為true才可使用此方法
        target Element 事件的目標
        trusted Boolean true表示事件是瀏覽器生成的,false表示事件是由開發人員通過JavaScript創建的
        type String 事件的類型
        view AbstractView 與事件關聯的抽象視圖,等同于發生事件的window對象

        若直接將事件處理程序指定給了目標元素,則this,currentTargettarget包含相同的值;若事件處理程序存在于按鈕的父節點中,則thiscurrentTarget等于父節點,而target等于按鈕元素。

        在需要通過一個函數處理多個事件時,可以使用type屬性:

        var btn = document.getElementsByTagName("button")[0];
        var handler = function(event) {
         switch(event.type) {
         case "click":
         alert("click");
         case "mouseover":
         alert("mouseover");
         case "mouseout":
         alert("mouseout");
         }
        }
        btn.onclick = handler;
        btn.onmouseover = handler;
        btn.onmouseout = handler;
        
        

        注意:只有在事件處理程序執行期間,event對象才會存在;一旦事件處理程序執行完畢,event對象就會被銷毀。

        2、IE中的事件對象

        訪問IE中的event對象有幾種不同的方式:

        1) 在使用DOM0級方法添加事件處理程序時,通過window.event訪問event對象;

        2) 在使用attachEvent()方法添加事件處理程序時,event對象會作為參數被傳入事件處理程序中,也可以通過window.event訪問event對象;

        3) 在通過HTML特性指定事件處理程序時,還可以通過一個名為event的變量來訪問event對象。

        IE中的事件目標通過srcElement屬性獲取,this不一定等于事件目標:在使用DOM0級方法添加事件處理程序時,this等于事件目標,但在使用attachEvent()方法添加事件處理程序時,this則不等于事件目標。

        屬性/方法 類型 說明
        cancelBubble Boolean 默認為false,但將其設置為true就可以取消事件冒泡,由于IE不支持事件捕獲,因此只能取消事件冒泡,而stopPropagation()則可以同時取消事件捕獲或冒泡
        returnValue Boolean 默認為true,但將其設置為false就可以取消事件的默認行為
        srcElement Element 事件的目標
        type String 事件的類型

        3、跨瀏覽器的事件

        var EventUtil = { 
         addHandler: function(element, type, handler) {
         ......
         }, 
         getEvent: function(event) {
         return event ? event : window.event;
         },
         getTarget: function(event) {
         return enent.target || target.srcElement;
         },
         preventDefault: function(event) {
         if (event.preventDefault)
         event.preventDefault();
         else
         event.returnValue = false;
         },
         removeHandler: function(element, type, handler) {
         ......
         }, 
         stopPropagation: function() {
         if (event.stopPropagation)
         event.stopPropagation();
         else
         event.cancelBubble = true;
         }
        };
        var btn = document.getElementsByTagName("button")[0];
        btn.onclick = function(event) {
         event = EventUtil.getEvent(event);
         EventUtil.preventDefault(event);
         EventUtil.stopPropagation(event);
         alert(event.target.type); // 
        輸出:click }

        PS:關于javascript事件說明可參考本站javascript事件與功能說明大全:http://tools.jb51.net/table/javascript_event

        更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript事件相關操作與技巧大全》、《JavaScript頁面元素操作技巧總結》、《JavaScript操作DOM技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript錯誤與調試技巧總結》

        希望本文所述對大家JavaScript程序設計有所幫助。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        JavaScript事件對象event用法分析

        JavaScript事件對象event用法分析:本文實例講述了JavaScript事件對象event用法。分享給大家供大家參考,具體如下: 前面的文章已經介紹了JavaScript為事件指定處理程序的五種方式。 下面繼續介紹JavaScript的事件對象event。 事件對象event包含導致事件的元素、事件的類型以及其他與特定事件相
        推薦度:
        標簽: 事件 js 對象
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 日木av无码专区亚洲av毛片| 国产成人自产拍免费视频| 亚洲中文字幕久久精品无码A| 一本久久免费视频| 91精品免费国产高清在线| 亚洲午夜成人精品电影在线观看| 亚洲精品欧洲精品| 中国好声音第二季免费播放| 女人让男人免费桶爽30分钟| 亚洲AV无码久久精品蜜桃| 视频一区二区三区免费观看| 9久9久女女免费精品视频在线观看| 亚洲综合AV在线在线播放| 亚洲av无码兔费综合| 久视频精品免费观看99| 亚洲国产精品无码av| 春意影院午夜爽爽爽免费| 国产成人亚洲精品狼色在线| 丝袜捆绑调教视频免费区| 亚洲视频2020| 久久这里只精品国产免费10| 国产亚洲一区二区在线观看| 国产精品免费久久| 亚洲ⅴ国产v天堂a无码二区| 黄床大片免费30分钟国产精品| 国产精品视_精品国产免费 | 亚洲v国产v天堂a无码久久| 亚洲人成网站色在线观看| 久久午夜夜伦鲁鲁片免费无码影视| ass亚洲**毛茸茸pics| 国产大片免费网站不卡美女| 亚洲精品无码成人片久久不卡| 日本一区二区三区免费高清| 亚洲欧洲日产专区| 2021精品国产品免费观看| 亚洲国产成人无码AV在线影院| 成人毛片免费观看视频| 亚洲另类无码专区丝袜| 亚洲中文字幕在线观看| 国产免费毛不卡片| 乱淫片免费影院观看|