Eventオブジェクトの書き込みクロスブラウザの互換性

<!DOCTYPE HTML > 
< HTML LANG = "EN" > 
< > 
    < メタ文字コード= "UTF-8" > 
    < メタ= "ビューポート" コンテンツ= "幅=装置幅、初期の規模= 1.0" > 
    < メタHTTP -equiv = "X-UA-互換" コンテンツ= "IE =縁" > 
    < タイトル>イベント对象跨浏览器兼容性写法</ タイトル> 
</ ヘッド> 
< ボディ>
    
        EventUtil = {
             // 添加事件
            はaddHandler:機能(要素、種類、ハンドラ){
                 場合(element.addEventListener){
                    element.addEventListener(タイプ、ハンドラ、);
                } そう であれば(element.attachEvent){
                    (element.attachEvent " " +のタイプ、ハンドラ);
                } {
                    要素[ オン+ 型] = ハンドラ。
                }
            }、
            // 移除事件
            removeHandler:機能(要素、種類、ハンドラ){
                 場合(element.removeEventListener){
                    element.removeEventListener(タイプ、ハンドラ、);
                } そう であれば(element.detachEvent){
                    (element.detachEvent " " +のタイプ、ハンドラ);
                } {
                    要素[ オン+ 型] = ハンドラ。
                }
            }、
            // イベント自体は取得
            GETTARGET:関数(){
                 リターンのevent.target || event.srcElement。
            }、
            // デフォルトの動作防ぐ
            のpreventDefaultを:機能(){
                 IF (event.preventDefault){
                    event.preventDefault();
                } {
                    event.returnValue = falseを
                }
            }、
            // バブリングキャプチャキャンセル
            のstopPropagation:関数(){
                 IF (するevent.stopPropagation){
                    するevent.stopPropagation();
                } {
                    event.cancelBubbleは= ;
                }
            }
        }
    </ スクリプト> 
    <! - 测试- > 
    < divのID = "DIV" >
        < ボタンのid = "BTN" >儿子</ ボタン> 
    </ divの> 
    < ID = "" のhref = "https://www.baidu.com/" >百度</ A > < スクリプト> VAR のdiv = document.getElementById(" DIV " );
        VAR BTN = のdocument.getElementById(" BTN " );
    
        
        EventUtil.addHandler(DIV、" クリック" 機能(){
            console.log(" 私は私です" );
            console.log(EventUtil.getTarget(イベント)); // 获取ターゲット
        })
        EventUtil.addHandler(BTN、" クリック" 機能(){
            console.log(私は息子です);
            EventUtil.stopPropagation(); // 防止バブリング
        })
         VAR A = のdocument.getElementById(" A " )。
        EventUtil.addHandler(、" クリック" 機能(){
            console.log(私はリンクしています);
            EventUtil.preventDefault(); //はデフォルトの動作を妨げる
        })
     </ スクリプト> 
</ ボディ> 
</ HTML >

おすすめ

転載: www.cnblogs.com/vinson-blog/p/12114809.html