フロア効果を実現するためのJavaScript

フロア効果を実現するためのJavaScript

この記事では、フロア効果を実現するための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 を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScriptでフロアナビゲーションエフェクトを作成するプロセスの詳細な説明
  • 床スクロール効果を実現する js
  • ウェブサイトのフロアナビゲーション効果を実現する JS コード例
  • JSはナビゲーションバーの床の特殊効果を実現します
  • AngularJS で実装したアンカーポイントフロアジャンプ機能の例
  • JSでメッセージボード機能を実現【床効果表示】
  • フロアジャンプ ページ レイアウトを実現するための純粋な HTML + CSS + JavaScript (サンプル コード)
  • フロアナビゲーション機能を実現するjs
  • js を使用してフロア効果を実装する簡単な例

<<:  MySQL パフォーマンス ストレス ベンチマーク ツール sysbench の使い方の紹介

>>:  SQL Server 2019 Always On クラスターの Docker デプロイメントの実装

推薦する

CSSレイアウトで中央揃えレイアウトを実現する方法

1. 親コンテナーをテーブルに設定し、子をインライン要素に設定します。テキストを表示するサブコンテン...

MySQL接続がハングする理由の詳細な説明

目次1. 背景建築問題現象2. 分析プロセス接続プール不安に陥る雲を晴らして光を見よう3. 解決策I...

Linux コンパイル最適化で習得しなければならないいくつかの姿勢のまとめ

01. コンパイルオプションとカーネルコンパイルLinux カーネル (英語: linux kern...

CSS で美しい時計アニメーション効果を実装するためのサンプルコード

仕事を探しています!!!事前準備:まず、このアニメーションは、以前のローディングアニメーションとクー...

Windows で負荷分散に Nginx+Tomcat を使用するための完全な手順

序文今日は、Prince が Windows で負荷分散に Nginx + Tomcat を使用する...

JavaScript をスリープまたは待機させる方法

目次概要setTimeout() の確認スリープ関数の書き方シンプルな選択ループで実行されますか?要...

Linux スクリプトの基礎を詳しく紹介

目次1. スクリプトvim環境2. シェルスクリプトで環境を定義する方法3. シェルスクリプト内の翻...

Linux での rpm、yum、ソースコードの 3 つのインストール方法の詳細な紹介

第1章 ソースコードのインストールRPM パッケージは特定のシステムとプラットフォームに応じて指定さ...

RHCE ブリッジング、パスワード不要のログイン、ポート番号の変更の概要

目次1. ブリッジを設定し、検証のためにパケットをキャプチャする1. ブリッジデバイスとセッションを...

クラウドデータ移行サービスの観点から見たMySQLの大規模テーブル抽出モードの原理分析

概要: MySQL JDBC 抽出にはどのような方法を使用すればよいでしょうか? その方法を説明しま...

jsはシンプルなカウントダウンを実装します

この記事の例では、参考までに簡単なカウントダウンを実装するためのjsの具体的なコードを共有しています...

Workermanはmysql接続プールのサンプルコードを書きます

まず、接続プールを使用する理由と、接続プールによってどのような問題が解決できるかを理解する必要があり...

Vuex のコアコンセプトと基本的な使用法の詳細な説明

目次導入始めるインストール①直接ダウンロードする方法②CND法③NPM方式④糸法NPMインストールの...

nginx 用の zabbix 5.0 をインストールして展開する方法

目次実験環境インストールと展開データベースをインストールして設定します (ここでは mariadb ...

さまざまなネットワーク画像形式におけるPNGの利点の詳細な説明

BMP は、ハードウェア デバイスに依存せず、広く使用されている画像ファイル形式です。ビットマップ保...