コース: JavaScript 基本講座

今すぐコースを受講しましょう

今すぐ登録して、23,200件以上登録されている、業界エキスパート指導のコースを受講しましょう。

スクロールに応じて要素のクラスを変える

スクロールに応じて要素のクラスを変える - JavaScriptのチュートリアル

コース: JavaScript 基本講座

スクロールに応じて要素のクラスを変える

このレッスンでは スクロールに応じて 要素のクラスを 切り替えてみたいと思います。 今開いている JavaScriptのコードなんですけれども click によって 要素のクラスを切り替えるというふうに なっています。 まずは切り替えるのは この header の部分なんですが それを getElementById で取得して そして document を click したらということで、 フラグを使って切り替えてるんですが、 フラグに応じて 一方は classList に fixed を加え、 そしてもう一回クリックすると 今度は fixed を除くということで クリックするたびに この header 部分のスタイルが変わる ということになるわけですね。 見てみましょう。 これがスタイルを加える前のヘッダーの 見た目なんですけれども、 クリックをすると少し丈が縮むと。 もう一回クリックすると戻ると いうことになっています。 ところでこのヘッダーの部分なんですが、 ポジション、固定になってるんですね。 fixed になっているので スクロールしても 位置が変わらないということに なっています。 ですからこのスクロールを 少し大きくしてくると、 丈の小さいほうのスタイルに こちらですね、変わると。 これはよく見かける インターフェースですよね。 そんなふうに設定をしてみたいと思います。 コードなんですが、 スクロールの大きさによって 処理を分けますので、 このフラグは使わなくなります。 ですからコメントにしてしまって、 そしてスクロールしたらという イベントですね。 いまクリックしたらになっていますけれども これちょっと経過残しておきましょう。 コピーして ペーストして 元のものはコメントアウトです。 スクロールするという やはりイベントを取るんですが 誰に聞くかというと window になります。 window に addEventListener で、 イベントはまんま scroll です。 scroll と。 スクロールすると、 この中の処理が行われます。 フラグ、やめちゃいましたので ここもまたコピーして 経過を残します。 ペーストして そして上はコメントアウト。 スクロールをどれぐらいしたかということ、 問い合わせ先はやはり window です。…

目次