2016-04-14 5 views
0

ナビゲーションに効果を作りたいとします(例:http://theme.co/x/)。私は画面の一番下にページをリフレッシュするたびにナビゲーションが必要で、トップにスクロールしてスクロールします。何か提案してください? 画面の下部にHTMLナビゲーションがあり、上にスティックされる

+1

はStackOverflowのへようこそ。あなたはおそらく認識していませんが、これはコード作成サービスではありません。問題を再現するためにいくつかのコードを含めてください。 – Aaron

答えて

1

は、スクロールイベントにイベントリスナーを取り付け、スクロール位置が所望の位置よりも大きい場合、それはposition0からfixed及びtopだ設定NAV要素にクラスを追加します。

+0

あなたの答えは、画面がサイズ変更された位置のサイズを変更した場合、1つの解像度に対してのみ機能します。だから、私はそれが動的に位置固定属性を設定するときに把握したい。 –

+0

いいえ。あなたのロジックは、単一の解像度でしか動作しません。ある特定の値をトリガポイントとしてハードコーディングする代わりに、ビューポートの高さからナビゲーションバーの外側の高さを差し引いた動的な位置を使用します。その値は、スクロールイベントが呼び出されるたびに(またはorientationchange/resize/loadイベント中にのみ)計算される必要があります。 – Quantastical

0

theme.coウェブサイト、イベントをスクロールして、O削除するCSSクラスを追加するためにイベントを添付(http://theme.co/x/wp-content/themes/x-child-custom/framework/js/x-custom.js):

$window.scroll(function() { 
     var $menutop = $navbarWrap.offset().top - $navbar.outerHeight(); 
     var $current = $this.scrollTop(); 
     if ($current >= $menutop) { 
     $navbar.addClass('x-navbar-fixed-top'); 
     } else { 
     $navbar.removeClass('x-navbar-fixed-top'); 
     } 
    }); 
関連する問題