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

推薦する

W3C チュートリアル (7): W3C XSL アクティビティ

スタイル シートは、ドキュメントの表示方法、発音方法、または入力方法を記述します。XSL 言語は、X...

ウェブデザイン実践者必読のキャリアプラン

原文記事、転載の際は著者と出典を明記してください! Web デザインは間違いなくテクノロジーであり、...

Vue は動的なプログレスバー効果を実現します

この記事では、動的なプログレスバー効果を実現するためのVueの具体的なコードを例として紹介します。具...

ie8/ie9/ie10/ie11 chrome firefox を区別するための CSS コード

ウェブサイトの互換性のデバッグは本当に面倒です。今日のウェブサイト デザイナーは、以前よりもはるかに...

MySQL 5.7 に組み込まれているストレス テストの mysqlslap コマンドと構文の詳細な説明

序文mysqlslap は、MySQL サーバーへのクライアント負荷をシミュレートし、各ステージの時...

vue2 vue3 での Echarts の詳細な使用方法

目次1. インストール2. vue2でEchartsを使用するmain.jsファイル内コンテナが与え...

Linux でファイル権限を変更する chmod コマンドの詳細な分析

Linux chmodコマンドを使用して、ターゲット ファイルにアクセス、読み取り、書き込み、または...

開発をスピードアップできる VueUse ライブラリ 5 つ (まとめ)

目次VueUse にはどのようなユーティリティがありますか? VueUseをVueプロジェクトにイン...

MySQL における楽観的ロック、悲観的ロック、MVCC の包括的な分析

序文データベースの実際の使用では、データの書き込みや読み取りを同時に行わないことが必要な状況によく遭...

MySQL 5.7 のスロークエリログの時間がシステム時間より 8 時間遅れている理由の詳細な説明

遅いクエリをチェックすると、時間が正しくなく、システム時間とちょうど 8 時間異なっていることがわか...

Vueは移動可能なフローティングボタンを実装します

この記事の例では、どこにでも移動できるフローティングボタンを実現するためのVueの具体的なコードを共...

divとspanの違いと使い方

目次1. DIVとSPANの違いと特徴2. スパンタグの概要3. 拡大と改善4. 凡例の効果の実証例...

Sysbench の MySQL ベンチマーク プロセスの分析

序文1.ベンチマークは、テスト オブジェクトのクラスの特定のパフォーマンス指標の定量的、再現可能、比...

Vue+express+Socketでチャット機能を実現

この記事では、チャット機能を実現するためのVue+express+Socketの具体的なコードを参考...

Better-scrollはメニューとコンテンツをリンクする効果を実現します

1. 基本的な使い方 <!DOCTYPE html> <html lang=&qu...