2

リンクをクリックすると、いくつかのページ要素を に設定する JavaScript がトリガーdisplay:noneされ、ページの高さが変更される動的ページがあります。これに対する一般的なブラウザーの動作は、ページの上部からのスクロール位置が保持されることです。リンクがページの下部近くにあり、ユーザーのカーソルがクリックされた後もリンクの上に留まるようにするため、代わりに下部からのスクロール位置を保持したい。

これを行う必要があるコードは次のとおりです。

var scrollBottom=getDocHeight()-getScrollTop();
//do stuff to change height
window.scrollTo(0,getDocHeight()-scrollBottom);

(ドキュメントの高さとスクロール位置を取得するために見つけたクロスブラウザ機能を使用)。

これは chrome と Internet Explorer では正常に機能しますが、firefox では、ページの高さが変化してからスクロール位置が変化するまでの間にわずかな遅延があります。その結果、ページがすばやく再調整されるときにちらつきが発生します。これは私を大いに悩ませています.

ページの上部ではなく下部からのスクロール位置を覚えておくための修正またはより自然な方法を誰かが提案できますか?

ありがとうございました。

4

0 に答える 0