2017-05-14 5 views
0

場合は、私はdiv要素を持っている:Javascriptの複数のイベントのための文

<div id="myDiv">This Div is Tracked</div> 

は、私は次の操作を実行する機能が必要になります。

例:

checkSeveralEvents =() => { 

    if (myDivIsHovered || myDivIsClicked || myDivIsFocus) { 

     console.log(`myDiv has been ${eventHere}`); 

    } 

} 

私はこれをどのように行うことができますか?

+0

: http://stackoverflow.com/questions/11845678/adding複数のイベントリスナーと1つの要素 –

+0

divの変更に応じて、 '.fire( 'myDivIsChanged'、{type:" focus "}))、' .fire 'などの追加データを渡してイベントを発生させることができます( 'myDivIsChanged'、{type: "clicked"}) ')を呼び出し、それを1つの関数で捕捉し、それを処理します。渡される型に依存します – DanilGholtsman

+0

誰が 'checkSeveralEvents'を呼び出しますか?最初に単一のイベントタイプに対処する方法を熟知したいかもしれません。 – Bergi

答えて

2

あなただけのすべての必要なイベント一つずつを聞くことができます:あなたはこれを見てとるべき

const d = document.getElementById('myDiv'); 
 
const events = ['click', 'mouseleave', 'mouseover']; 
 

 
events.forEach(e => { 
 
    d.addEventListener(e, (ev) => { 
 
    console.log('My div has been ', e + 'ed') 
 
    }) 
 
})
<div id="myDiv">This Div is Tracked</div>

関連する問題