0

そのページ内のセクションにスティッキー ナビゲーションがあるページがあります。スティッキー ナビゲーションとインライン アンカーは正常に機能しますが、ページに直接アクセスして を確認すると、が正しく計算されないwindow.location.hashという問題が発生します。offset().topこれは、私のセクションの 1 つに一連のフローティング div (グリッドを形成するため) があり、フロートが発生する前に計算が div の高さ (積み重ねられた) を表示しているためです。それを回避する1つの方法..そして私はこのオプションが2秒待ってから実行するのが嫌いですscrollTo().

フロートが実行された直後にこの計算を行う方法はありますか? 試してみましたが$(window).load()、動作が断続的です。setTimeout()また、読み込み速度などによっては私の誤差が出ると思います。

または、オフセットを計算せずに scrollTo に直接移動する方法はありますdiv#idか?

これが私が今それを管理している方法です:

if(window.location.hash) {
    setTimeout(function(){
        var ID = '#' + window.location.hash.substr(1);
        $.scrollTo($(ID).offset().top- nav_height2, 800, {axis:'y'}) ;
     }, 2000);
}

ありがとう!

4

0 に答える 0