1

このコードを使用して、div 全体をクリック可能にしています。

$(document).on('click', '.clickable', function (e) {
    window.location = $(this).find('a.main').attr("href");
    return false;
});

divには約4つのリンクがあり、それらが正常に機能するようにしたいので、divをクリックすると、クラスのリンク.mainが呼び出されたりクリックされたりします。div内で他のリンクがクリックされたときにそうしたい..それらはリンクのように機能します。

4

4 に答える 4

1

リンク自体がクリックされた場合は、false を返さないでください。

$(document).on('click', '.clickable', function (e) {
    // only execute if no Link was clicked
    if (!$(e.currentTarget).is('a')) {
        window.location = $(this).find('a.main').attr("href");
        return false;
    }
});

これにより、リンクがクリックされた場合ではなく、DIV がクリックされた場合にのみスクリプトが実行されます。したがって、div 内のリンクは通常どおりに動作します。

于 2013-10-09T08:27:14.000 に答える
1
$(document).on('click', '.clickable', function (e) {
    window.location = $(this).find('a.main').attr("href");
    return false;
});

$(document).on('click', '.clickable a', function (e) {
    e.stopPropagation();
});

アンカーからイベントを伝播しないでください。

于 2013-10-09T08:28:20.893 に答える