デザインサプライ-DesignSupply.-※当ウェブサイトを快適に閲覧して頂くためにブラウザのjavascriptを有効にしてください0%ProgrammingプログラミングナレッジPosted:2018.09.08jQueryでスクロールに対応する動きがついた固定ヘッダーを実装するjQueryjavascrptjQueryフロントエンドスクロールで画面上部に固定されるヘッダーを実装するときに、スクロール量やスクロールの方向に合わせて動きを変化させたいときに使える方法です。ファーストビューではヘッダーを表示させたくないけど、スクロール時は固定で表示させるようなデザインでよく見かけますね。具体的には、jQueryでスクロール量を取得しながらCSS側でヘッダーの位置を調整する形になります。ここでは、ページをスクロールさせると上からヘッダーが画面上部に固定表示されて、上方向にスクロールさせるとそのまま上方向に画面外へと収まり非表示になり、下方向にスクロールすると再度表示されるという仕様です。それでは実際のコードを見ていきます。});});HTMLはシンプルにヘッダー部分だけ用意すればOKです。CSSでpositionを固定にして、transformでヘッダーの高さ分上方向に移動させ、ヘッダーが画面内に表示されないようにしておきます。このときに、transitionを設定しておくと動きにアニメーションをつけることができます。javascriptでスクロールに合わせてヘッダー部分の動きの制御をかけていきます。閾値を示す変数にはページトップからどれくらいスクロールするとヘッダーが表示されるかというのを指定します。あとはスクロールイベントでヘッダーの位置を調整する部分を実行していくだけです。これだけでスクロールに対応した動きをする固定ヘッダーが実装できます。今回のサンプルはこちらに用意しましたのでよかったらご参考に。CodePen.上記ではヘッダーの高さを絶対値指定していますが、高さを指定しない場合は、jQueryでヘッダーの高さを取得して、適宜変数に格納して調整する形になるかと思います。ディレクター・ウェブデザイナー・フロントエンドエンジニアをやっています。「ウェブとデザインでヒト・モノ・サービスを繋げ新しい価値を生み出す」をコンセプトに日々奮闘中!制作中はチョコレートが欠かせない三十路Webクリエイター。制作のご依頼やお問い合わせ・パートナー業務提携のご相談はこちらデザインやウェブ制作についてのご依頼やご相談、その他お問い合わせなどもお気軽にご連絡ください。フットワークの軽さやレスポンスの早さ、また豊富な経験や知識、技術を活かした対応力といったフリーランスクリエイターの強みでクライアント様、パートナー企業様のお力になります。デザインからコーディングやWordPress実装といったウェブサイト構築はもちろん、写真撮影や動画編集、コンテンツ制作からサイト運用サポートまで一括してお任せください。ホームページ制作のご検討やウェブ運用でお悩みの経営者様や企業のウェブ担当者様をはじめ、個人で店舗を営んでいらっしゃるオーナー様、フリーで活動されているビジネスオーナー様はもちろんのこと、リソース不足でお困りの制作会社様、またクリエイターをお探しの代理店様も大歓迎です。コンタクトをご希望の方はお手数ですが、下記よりお問い合わせフォームのページへアクセスしていただき、必要事項を入力の上メッセージを送信してください。確認でき次第すぐに折り返しご連絡致します。コメントをキャンセル記事に関するご質問やご意見などありましたら下記のコメントフォームよりお気軽に投稿ください。メールアドレスは公開されませんのでご安心ください。付いている欄は必須項目となります。コメント内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。*次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。javascriptで配列を扱う時によく使うメソッド#10【配列を文字列にする・多次元配列をフラットにする。