2016-10-19 7 views
1

私はこのJQuery関数を持っています。コンテンツをオーバーラップしている固定されたナビゲーションバーがあるため、スクロールして60pxにします。この60pxをこのコードに追加するにはどうすればよいですか?Jqueryアンカーにスクロールする-60px

/** 
* Scroll to section 
* @param string des HTML identity of section block 
* @return void 
*/ 
function goToSectionID(des){ 
    var os = (history.pushState)?51:0; 
    os = (jQuery(window).width()>800)?os:0; 

    var pos = (jQuery(des).length>0)?jQuery(des).offset().top-os:0; 
    onanimate = true; 
    jQuery('html,body').animate({scrollTop:pos},1000,function(){ 
     if(history.pushState){ 
      history.pushState(null,null,des); 
     }else window.location.hash = des; 
     jQuery(window).scrollTop(pos); 
     onanimate=false 
    }); 
} 
+0

'jQueryの(ウィンドウ).scrollTop(POS - 60)のリンクがありますか;'? –

答えて

0

この関数はあまりにも複雑すぎたり、あまりにも単純すぎたりしますが、あなたのコードは見当たりません。

最も簡単な方法:

$(".arrowimg").click(function() { 
    $('html, body').animate({ 
    scrollTop: $('#in').offset().top += 500 
    },500); 
    }); 

最初の行は、明らかに、イベントリスナーおよびハンドラです。 2行目は、クロスブラウザの理由から、HTMLと本文を対象としています。アニメーションメソッドを使用します。 scrollTopスプライト、HTMLで、ここのようにIDアンカーとターゲット

<div class="arrowimg" id="in"></div> 

あなたはさらに上下60ピクセルを移動したい場合は、我々はあなたのコードを持っていないが、それはだとして、それから私は、知りません+または - の問題。

ここ

http://codepen.io/damianocel/pen/zBLEXR

関連する問題