フロア効果を実現するための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 デプロイメントの実装

推薦する

Mysqlリモート接続構成を実装する2つの方法

Mysqlリモート接続構成を実装する2つの方法会社で働いていると、誰かのコンピュータに保存されている...

SQL重複排除方法の概要

SQL を使用してデータを抽出する場合、テーブル内で重複した値に遭遇することがよくあります。たとえ...

負のz-indexを持つ要素がクリックできない問題の解決策

最近、ポップアップ広告に取り組んでいました。デフォルト ページには z-index が設定されていな...

Centos7 に mysql 8.0.13 (rpm) をインストールする詳細なチュートリアル

yum か rpm か? yum によるインストール方法は非常に便利ですが、公式サイトから MySQ...

擬似静的およびクライアント適応型 Nginx の設定方法

バックエンドは thinkphp3.2.3 フレームワークを使用します。他の言語を使用している場合は...

Docker+Nginx を使ってシングルページアプリケーションをデプロイする

開発から導入まで自分で行うシングルページアプリケーションを開発する場合、ビルドを実行した後 npm ...

Dockerを使用してgitlabコミュニティの中国語版を構築する詳細なプロセスを教えます

1. Docker Composeを使用して起動を構成するDocker Compose を知らない場...

React Contextの理解と応用についてお話ししましょう

目次序文React Context の初見コンテキストの使い方コンテキストを直接取得できるいくつかの...

MySQL 8.0.15 のインストールと設定のグラフィックチュートリアルと Linux でのパスワード変更

このブログは、MySQL8.0.15 を正常にインストールしたことを思い出すために書きました。以前は...

ネイティブ js カプセル化シームレスカルーセル機能

ネイティブjsカプセル化シームレスカルーセルプラグイン、参考までに、具体的な内容は次のとおりです。例...

Linux での感嘆符コマンド (!) の使用の概要

序文最近、弊社では mbp の設定をしており、ssh を使うことが多くなりました。複雑なコマンドを書...

MySQL ストアド プロシージャの作成と呼び出しの詳細な説明

目次序文ストアドプロシージャ: 1. ストアドプロシージャの作成と呼び出し1. ストアドプロシージャ...

3次元画像配置効果を実現する純粋なCSSのサンプルコード

1. 要素の幅/高さ/パディング/マージンのパーセンテージ基準要素の幅/高さ/パディング/マージンの...

CSSの一般的なプロパティ

CSS の背景: background:#00ffee; //背景色を設定するbackground-...

HTML で色を表すには、6 桁の 16 進コード、RGB、またはキーワードを使用します。

HTML で色を表す方法は 3 つありますが、最もよく使われるのは 6 桁の 16 進コード表現です...