2

ここで説明したようなアコーディオンメニューを作りました。問題は、メニュー項目をクリックすると、ブラウザがにジャンプ(およびスクロール)して、ターゲットがビューポートに表示されていることを確認しようとすることです。このようなものを除いて、ジャンプを防ぐための解決策はありますか?target

$("a[href^=#]").on("click", function(e) {
    e.preventDefault();
    history.pushState({}, "", this.href);
});

jsソース:ジャンプとの戦い

4

1 に答える 1

1

JavaScript を使用する以外に方法はありません。また、hashchange イベントをリッスンし、イベント発生時の実際のスクロール位置を保存して、イベント後にそこに戻ることもできます。しかし、それらは考えられる唯一の解決策です。

于 2013-06-29T12:14:50.830 に答える