0

同じ機能を持つ2つのボタンを持つものをプログラミングしています。

最初のボタンのすべての情報を2番目のボタンに配置するのではなく、2番目のボタンに偶数ハンドラーを追加して、最初のボタンのクリックをトリガーし、同じコードが実行されるようにしました。

私はjQueryフレームワークを使用しているので、可能であればjQuery形式で提案を得ることができます。

これは、イベントハンドラーに使用していたコードです。

$(document).on('click', '.enlargeComments', function(){

    $(this).prev('.commentsLink').trigger('click');

});

すべての機能を備えたボタンはPHPクラスによって作成されるため、2番目のクラスに配置するための情報を取得することはできません。また、識別クラスを与えることは、クラスに追加の変更を加えることを意味しますが、正直に言うと理想的ではありません。 。

ただし、これら2つの間にある別のボタンがあり、イベントハンドラーが機能しなくなりました...元のボタンを機能させるためのソリューションが必要なので、現在の機能を変更する提案はありません。

前もって感謝します。

4

2 に答える 2

2

これを行うために使用できます.prevUntil(sel).prev()

$(document).on('click', '.enlargeComments', function(){

    $(this).prevUntil('.commentsLink').prev().trigger('click');

});
于 2012-11-26T17:26:16.023 に答える
1

どうしてそうするか?

とにかく同じことをするので、両方の要素に同じハンドラーをアタッチするだけです。

$(document).on('click', '.commentsLink, .enlargeComments', function(){

    //click stuff

});
于 2012-11-26T17:27:06.927 に答える