修飾子のイベントVueのコマンド

イベント修飾子:

+ .Stopストップバブリング

+ .Preventデフォルトのイベントを防ぎます

+を使用するイベントのキャプチャモードは、イベントリスナーを追加し.capture

イベントは、要素自体に発生した場合+ .Selfのみコールバックをトリガー(例えば、ない子要素)

+ .Onceイベントが発生し、一度だけ

 

バブリングを停止.stop

    <! - STOPはバブリングを停止する   - > 
    <! - divHandlerイベントの実装では、最初のbtnHandleイベントが実行されますが、ボタンのイベントをクリックする- > 
    < divのクラス= "ボックス" @click = "divHandler" > 
        < ! - <タイプのINPUTは=「ボタン」値= @ click.stop =「btnHandler」「彼突く」>イベントのバブリングを停止- > 
        < INPUT タイプの=「ボタン」=「彼を突く」@click = " btnHandler " > 
    </ divの> 


    < スクリプトSRC =" ./ libに/ VUE-2.4.0.js " > </ スクリプト> 
    <スクリプト> 
    
        のvar VM = 新しいですVUE({ 
            EL:' ■は' 
            データ:{ 

            }、
            メソッド:{ 
                divHandler(){ 
                    アラート(' トリガイベントdivHandler ' ); 
                }、
                btnHandler(){ 
                    アラート(' トリガイベントbtnHandler ' ); 
                } 
            } 
        });

 

 

デフォルトの動作を妨げる.prevent

 <! - .Preventは、デフォルトの動作を妨げる- > 
    <! - あなたは百度に問題をクリックすると、トリガーあるlinkHandlerイベントが、また、直接のBaiduへ- > 
    <! - <のhref =「HTTP: //www.baidu.com「click.prevent = 'あるlinkHandler' @は > Baiduのに問題を抱えています!</a>のBaiduの行動を開くために停止- > 
    < divのクラス= "ボックス" @click = "divHandlerは" > 
        < INPUT タイプのは= "ボタン" = "彼を突く" @click = "btnHandler" > 
        < HREF = "http://www.baidu.com" click.prevent @ = 'あるlinkHandler' > Baiduのに問題を抱えています!<
     
    
    スクリプトSRC = "./ libに/ VUE-2.4.0.js"  > </ スクリプト> 
    < スクリプト> 
    
        VAR VM = 新しい新しいヴュー({ 
            EL:' ■は' 
            データ:{ 

            }、
            メソッド:{ 
                divHandler(){ 
                    アラート(' トリガーイベントdivHandler ' ); 
                }、
                btnHandler(){ 
                    アラート(' トリガイベントbtnHandler ' ); 
                }、
                あるlinkHandler(){
                    アラート("あるlinkHandlerは、イベントをトリガしました" ); 
                } 

            } 
        })。

 

イベントをトリガ捕捉機構を達成.Capture

  

 <! - .Captureイベントをトリガ捕捉機構を実現する- > 
    <! - クリックBTNボタン上btnHandlerイベントをトリガし、divHandlerイベントをトリガ、外部から内部へのキャプチャ・イベントを使用して達成- > 
    <! - <DIV click.capture = @クラス= "ボックス" "divHandler"> btnHandlerの最初のdivHandlerを実現> - 
         < divのクラス= "ボックス" click.capture @ = "divHandler" > 
< INPUT タイプのは= "ボタン" =「彼を突きます" @click =" btnHandler " > < HREF =" http://www.baidu.com " @click = 'あるlinkHandler' >百度への質問で!< < スクリプトSRC = "./ libに/ VUE-2.4.0.js" > </ スクリプト> < スクリプト> VAR VM = 新しい新しいヴュー({ EL:' ■は' データ:{ }、 メソッド:{ divHandler() { アラート(' トリガイベントdivHandler ' ); }、 btnHandler(){ アラート(' トリガイベントbtnHandler ' ); } あるlinkHandler(){ アラート(" トリガーあるlinkHandlerイベント" ); } } }); </ スクリプト>

 

 

.selfは、現在の要素の時間のみをクリックし、それはイベント・ハンドラをトリガします達成しました

.selfは本当に泡立ちの振る舞いを防ぐことはできません、トリガー自身の気泡の挙動を防ぎます

  

< DIV クラス= "外側" @click = "div2Handler" > 
      < DIV クラス= "内側" @ click.self = "div1Handler" > 
        < 入力タイプ= "ボタン" = "戳他" @click = "btnHandler" > 
      </ DIV > 
    </ DIV >  

< スクリプト> 
    // 创建Vueの实例、得到ViewModelに
    VAR VM =  新しいヴュー({ 
      エル:' #app ' 
      データ:{}、 
      メソッド:{
        div1Handler(){
          console.log(' これは、内側のdivトリガークリックイベントである' 
        }、
        btnHandler(){ 
          にconsole.log(' これは、ボタンクリックイベントBTNトリガされる' 
        }、
        linkClick(){ 
          にconsole.log(' トリガクリックイベントの接続' 
        }、
        div2Handler(){ 
          にconsole.log(' 外側のdivクリックイベントをトリガされる' 
        } 
      } 
    }); 
  </ スクリプト>

 .onceはイベント・ハンドラをトリガ

  

< HREF = "http://www.baidu.com" @ click.prevent.once = "linkClick" >問題は、行くBaiduの</ A > < スクリプト> // のViewModel与えることを、Vueのインスタンスを作成するvar VMを= 新しい新しいヴュー({ 
      EL:' #app ' 
      データ:{}、
      メソッド:{ 
        div1Handler(){ 
          はconsole.log(' これは、内側のdivトリガクリックイベントである' 
        }、
        btnHandler(){ 
          はconsole.log(" これは、トリガーボタンのクリックイベントのBTNです"



    
     
        }、
        LinkClick(){ 
          にconsole.log(' 接続クリックイベントトリガ' 
        }、
        div2Handler(){ 
          にconsole.log(' このトリガーされ、外側のdivクリックイベントを' 
        } 
      } 
    })。

 

おすすめ

転載: www.cnblogs.com/xiaowie/p/11572669.html