コンテナdiv
の中に次のbootstrap3
ボタンコードが含まれています。ボタンにはplus
アイコン以外のテキストはありません。続きJavaScriptのバインド引数が正しく
<div id="container">
...
<a type="button" class="btn btn-success input-sm btn-add">
<span class="glyphicon glyphicon-plus-sign black" aria-hidden="true"></span>
</a>
...
</div>
はplus
ボタンのイベントリスナーと私のJS-Object
です。
var query_builder = {
init: function() {
this.cacheDom();
this.bindEvents();
},
cacheDom: function() {
this.$container = $("#container");
...
},
bindEvents: function() {
this.$container.on('click', '.btn-add', this.addRule.bind(this));
...
},
addRule: function(evt) {
...
...
$(evt.target).addClass('invisible');
}
}
私は
は、イベントがトリガされますし、最後にそれが見えなくなります。plus
アイコン外であるが、ボタン内の任意の場所をクリックしアイコンをちょうどクリックすると、イベントが発生しますが、アイコンは表示されず、ボタンは空白のままです。イベントをバインドするときに、ボタンのコンテキストを正しく渡す方法がわかりません。
注:私はオブジェクト指向JavaScriptを使い慣れていません。
多分evt.currentTargetを試してみてください。 –
@positlabsチャームのように動作しました! :-) – DhiwaTdG
Hehe。クール!私は答えを加えました。 –