2016-07-27 9 views
1

私のバナーにはボタンがあります。このボタンをクリックすると、バナーの下のdivにスクロールしてほしいです。これは私が使用していますコードです:私はそれをクリックすると「スクロール先」を使用して、さまざまなメディアクエリで固定されたナビの高さを考慮する方法を教えてください。

$(function() { 
     $('a[href*="#"]:not([href="#"])').click(function() { 
     if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) { 
      var target = $(this.hash); 
      target = target.length ? target : $('[name=' + this.hash.slice(1) +']'); 
      if (target.length) { 
      $('html, body').animate({ 
       scrollTop: target.offset().top 
      }, 1000); 
      return false; 
      } 
     } 
     }); 
    }); 

が、それは私をスクロールしますが、それはdiv過ぎて私をスクロールします。私が何をする必要があると信じているのは、固定ナビゲーションの高さとおそらく、私がスクロールしているdivのpadding-topの高さを考慮に入れることです。

次に、モバイルビューでナビの高さが変わったらどうなりますか?それをどのように考慮するか?

私はJavascriptを吸っていますので、どんな助けや指針をいただければ幸いです。

+0

を変更することができますので、私はこれがあなたの質問ではないですけど、あなたは[このプラグイン](https://github.com/を使用することができ、このような何かを行うことができますflesler/jquery.scrollTo)を使用して、ホイールを再作成する必要はありません。 – Polyov

答えて

0

あなたがスクロール長

function scrollNav() { 
     $('a').click(function(){ 
     $('html, body').stop().animate({ 
      scrollTop: $($(this).attr('href')).offset().top - 160 
     }, 400); 
    return false; 
    }); 
}; 
関連する問題