2017-09-28 4 views
0

テンプレートイベント内の要素にクラスを追加し、この流星テンプレートコードが不要な呼び出しなし要素にクラスを追加しようとします。 event.currentTarget.addClass('active');クラスを追加できませんでしたか?私は間違って何をしていますか?あなたはthisは、あなたがクリックした要素の後ろデータコンテキストなること

'click #login-form-link'(event) => { 
    $(event.target).addClass('active'); 
}, 

注意ではなく、あなたのDOM要素のjQueryオブジェクトにイベントターゲットを変換する必要が

// inside the template events 
'click #login-form-link': function (event) { 
    $('#login-form-link').addClass('active'); // extra call 
    event.currentTarget.addClass('active'); // cheap but did not work 
}, 
+0

あなたの質問は何ですか? – Mikkel

+0

event.currentTarget.addClass機能は、ブラウザのコンソール上のエラーではありません。 –

+1

これはjQueryメソッドなので、$(event.currentTarget).addClass( 'active');または 'event.currentTarget.classList.add( 'active');' – adeneo

答えて

0

クラスを追加することができます。あなたが何らかの形でDOMノードへの参照を取得する必要があるとして、あなたは本当に余分な呼び出しを取り除くことはできません

$(event.target)は、任意のと同じくらい良いです。この質問が既に回答されているが

0

、私は助けるが、このタスクはjQueryを使用せずに行うことができることを言及することはできません。

'click #login-form-link'(event) => { 
    event.target.classList.add('active'); 
}, 

classListadd()remove()toggle()方法をサポートしていますプロパティで、ちょうどことブラウザのいくつかは、これらのメソッドの複数の引数をサポートしていませんが、それらのすべて(本当に古いものを除く。)基本的なサポートを持っている:ブラウザのサポートの異なります。

MDN documentation