1

クリックして DIV のクラスを切り替えたいのですが、その DIV 内のリンクをクリックしている間は切り替えません。

私はこれを試しましたが、リンクがクリックされてもクラスを切り替えます:

$("ol.compacted .tl_general:not(a)").click(function () {
    $(this).toggleClass("re-expanded");
});

どうすればよいですか?前もって感謝します!

4

2 に答える 2

9

そのdiv内のリンクをクリックすると、イベントの伝播を停止します。

$("ol.compacted .tl_general a").click(function (e) {
    e.stopPropagation();
});
于 2012-01-26T19:18:21.113 に答える
2

イベントターゲットが正しい要素であることを確認してください。

$("ol.compacted .tl_general").click(function (e) {
    var $this = $(this);
    if ( $this.is(e.target) ) {
        $this.toggleClass("re-expanded");
    }
});
于 2012-01-26T19:19:25.713 に答える