独自のカスタムイベントクラスを書くためのJavaScript

<!DOCTYPE HTML > 
< HTML LANG = "EN" > 

< > 
    < メタ文字コード= "UTF-8" > 
    < メタ= "ビューポート" コンテンツ= "幅=装置幅、初期の規模= 1.0" > 
    < メタHTTP -equiv = "X-UA-互換" コンテンツ= "IE =縁" > 
    < タイトル>ドキュメント</ タイトル> 
</ ヘッド> 

< ボディ> 
<
> 
    // イベント実行の関数として;カスタムイベント
    関数EVENT1(){ 
        にconsole.log(" 多くのロジック111 " ); // 書き込み; 
    }
     関数イベント2(){ 
        にconsole.log(非常に多くのロジック222 " // Bが書き込ま; 
    } 
    クラスMyEvent { 
        コンストラクタ(){ 
            この.handle = {} 
        } 
        // カスタムイベント追加
        addEvent(evnetName、FN){
             IFをtypeof演算 .handle [evnetName] ==  " は未定義" ){
                 この.handle [evnetName] = []; 
            } 
            この.handle [evnetName] .push(FN); 
        } 
        // カスタムイベントトリガ
        トリガ(evnetNameを){
             この.handle [evnetName] .forEach(V => { 
                V(); 
            })
        } 
        // カスタムイベント削除
        {)removeEvent(eventNameの、Fnキーを
             IF のFnをして 、この.handle [eventNameの]){
                 リターン; 
            } 
            のためのLET(I = 0 ; I <  この.handleは[eventNameの] .LENGTH。I ++ ){
                 場合この.handle [eventNameの] [I] === FN){
                     この.handle [eventNameの】.splice(I、1 )。
                    破ります; 
                } 
            } 
        } 
    } 

    NEWEVENTせ=  新しいMyEvent()。
    newEvent.addEvent(" myfn " 、EVENT1)。
    newEvent.addEvent(" myfn " 、イベント2)。
    newEvent.removeEvent(" myfn " 、イベント2)。
    newEvent.trigger(" myfn " ); 


</ スクリプト> 

</ HTML >

 

おすすめ

転載: www.cnblogs.com/supermanGuo/p/11403060.html