0

:activeモバイルページのボタンの状態を次のように修正しています。

$('body').on('touchstart', 'a', function (e) {
    $(this).addClass("active");
}).on('touchend touchcancel click', 'a', function (e) {
    $(this).removeClass("active");
});

私は多くの動的なページ操作を行っており、このハックを常に再適用する必要がないため、この委任/バブルアプローチはうまく機能します。

ただし、次のような追加のコードがいくつかあります。

$('a#MyAnchor').click(function(e){
    e.preventDefault();
    // do something
    return false;
});

もちろん、これにより最初のブロックが機能しなくなります:(これに対するエレガントな解決策はありますか?

にハックを再適用できることはわかっていますが#MyAnchor、それは醜いです。

<a>クリックしてもナビゲーションが発生しないようにする方法はありますか?

おまけ:click接続されている他の明示的なハンドラーが起動するのを防ぎ#MyAnchorながら、DOM への伝播を許可することはできますか?

4

1 に答える 1