2017-09-12 7 views
0

addEventListenerの元の場所はわかりませんが、ドキュメントオブジェクトの一部であると想定しています。もしそうなら、コードdocument.getElementById('displayTodosButton').addEventListenervar displayTodosButton = document.getElementById('displayTodosButton');と同じですか?addEventListenerメソッドはドキュメントオブジェクトの一部ですか?

var displayTodosButton = document.getElementById('displayTodosButton'); 

    displayTodosButton.addEventListener('click',function(){ 
     todoList.displayTodos(); 
    }); 
+1

これらの2つのバリエーションは同じですが、基本的なJSですが、特にaddEventListenerとは関係ありません。 'foo.bar()'と 'var baz = foo;を使ってください。 baz.bar(); '同じことになります。 – CBroe

+0

'addEventListener'はDOMの' HTMLElement'が提供するメソッドです。 'document.getElementById()'は 'HTMLElement'を返します。中間で変数を使用せずに' addEventListener'を呼び出すことができます。 –

答えて

3

これはイベントをサポートする任意のオブジェクトであることができる:「イベントターゲットは、ドキュメント内の要素であってもよいし、文書自体、ウィンドウ、または(例えば、XMLHttpRequestのような)イベントをサポートする任意の他のオブジェクト」。メソッドのaddEventListenerと呼ばれるので

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener

document.getElementById('displayTodosButton').addElementListenerを参照してくださいは、動作しないでしょう。それ以外の場合は、要素への参照を変数に保存するか、.getElementById()から返されたときに直接使用することができます。結果は変わらないでしょう。

関連する問題