この記事では、フロア効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。 * { マージン: 0; パディング: 0; } html, 体 { 幅: 100%; 高さ: 100%; } ul { 幅: 100%; 高さ: 100%; } ul>li { リストスタイル: なし; 幅: 100%; 高さ: 100%; フォントサイズ: 100px; テキスト配置: 中央; } オル { 位置: 固定; 左: 10px; 上位: 50%; 変換: translateY(-50%); } ol>li { リストスタイル: なし; 幅: 100ピクセル; 行の高さ: 40px; テキスト配置: 中央; 境界線: 1px実線 #000; } .選択された{ 背景: スカイブルー; } <ul> <li>私はレベル1です</li> <li>私はレベル2です</li> <li>私はレベル3です</li> <li>私はレベル4です</li> <li>私はレベル5です</li> </ul> <オル> <li class="selected">レイヤー 1</li> <li>レイヤー 2</li> <li>レイヤー 3</li> <li>レイヤー 4</li> <li>レイヤー 5</li> </ol> js: // 1. 床の色を初期化します。let oPages = document.querySelectorAll("ul>li"); colorArr = ['緑', '青', '紫', '赤', '黄'] とします。 (i = 0 とします; i < oPages.length; i++) { ページをoPages[i]とします。 ページスタイルの背景色を[i]に設定します。 } // 2. クリックされたものを選択します let oItems = document.querySelectorAll("ol>li"); 現在の項目をoItems[0]とします。 // 表示領域の高さを取得します。let screenHeight = getScreen().height; timerId を null にします。 (i = 0 とします; i < oItems.length; i++) { item = oItems[i]とします。 アイテム.onclick = 関数() { 現在のアイテム.className = ""; this.className = "選択済み"; 現在のアイテム = これ; // スクロールを実装します // window.scrollTo(0, i * screenHeight); // 注: Web ページをスクロールするには documentElement.scrollTop を使用します。値を設定するときに単位を追加しないでください。// document.documentElement.scrollTop = i * screenHeight + "px"; // document.documentElement.scrollTop = i * screenHeight; タイマーIDをクリアします。 タイマーID = setInterval(関数() { begin = document.documentElement.scrollTop; とします。 ターゲットを i * screenHeight とします。 ステップ = (ターゲット - 開始) * 0.2 とします。 開始 += ステップ; (Math.abs(Math.floor(step)) <= 1)の場合{ タイマーIDをクリアします。 document.documentElement.scrollTop = i * 画面の高さ; 戻る; } document.documentElement.scrollTop = 開始; }, 50); } } //ブラウザのビューポートの幅と高さを取得する関数 getScreen() { 幅、高さを指定します。 if (window.innerWidth) { 幅 = ウィンドウの内側の幅; 高さ = window.innerHeight; } そうでない場合 (document.compatMode === "BackCompat") { 幅 = document.body.clientWidth; 高さ = document.body.clientHeight; } それ以外 { 幅 = document.documentElement.clientWidth; 高さ = document.documentElement.clientHeight; } 戻る { 幅: 幅、 高さ: 高さ } } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL パフォーマンス ストレス ベンチマーク ツール sysbench の使い方の紹介
>>: SQL Server 2019 Always On クラスターの Docker デプロイメントの実装
1. 親コンテナーをテーブルに設定し、子をインライン要素に設定します。テキストを表示するサブコンテン...
目次1. 背景建築問題現象2. 分析プロセス接続プール不安に陥る雲を晴らして光を見よう3. 解決策I...
01. コンパイルオプションとカーネルコンパイルLinux カーネル (英語: linux kern...
仕事を探しています!!!事前準備:まず、このアニメーションは、以前のローディングアニメーションとクー...
序文今日は、Prince が Windows で負荷分散に Nginx + Tomcat を使用する...
目次概要setTimeout() の確認スリープ関数の書き方シンプルな選択ループで実行されますか?要...
目次1. スクリプトvim環境2. シェルスクリプトで環境を定義する方法3. シェルスクリプト内の翻...
第1章 ソースコードのインストールRPM パッケージは特定のシステムとプラットフォームに応じて指定さ...
目次1. ブリッジを設定し、検証のためにパケットをキャプチャする1. ブリッジデバイスとセッションを...
概要: MySQL JDBC 抽出にはどのような方法を使用すればよいでしょうか? その方法を説明しま...
この記事の例では、参考までに簡単なカウントダウンを実装するためのjsの具体的なコードを共有しています...
まず、接続プールを使用する理由と、接続プールによってどのような問題が解決できるかを理解する必要があり...
目次導入始めるインストール①直接ダウンロードする方法②CND法③NPM方式④糸法NPMインストールの...
目次実験環境インストールと展開データベースをインストールして設定します (ここでは mariadb ...
BMP は、ハードウェア デバイスに依存せず、広く使用されている画像ファイル形式です。ビットマップ保...