この記事では、フロア効果を実現するための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 デプロイメントの実装
背景インデックスは諸刃の剣です。クエリ速度は向上しますが、DML 操作も遅くなります。結局のところ、...
目次概要1. コンポジションAPI 1. ref と reactive の違いは何ですか? 2. 周...
公式サイトをダウンロードまず公式ウェブサイトにアクセスしてMySQLをダウンロードしてくださいリンク...
目次スムーズなアニメーションの基準方法1: Chromeデベロッパーツールを使用する方法 2: フレ...
1. mysqldump コマンドを使用してデータベースをエクスポートします (このコマンドのパスで...
背景ご存知のとおり、nginx は高性能な Web サーバーであり、負荷分散やリバース プロキシによ...
コードをコピーコードは次のとおりです。 <HTML> <ヘッド> <T...
ストアドプロシージャとは簡単に言えば、これは強力で、JAVA 言語のメソッドに似た比較的複雑な論理関...
<br />しばらくの間、多くの人が XHTML の使い方を知らないことに気付きました。...
1. Linuxカーネルドライバモジュールの仕組み静的ロードでは、ドライバモジュールをカーネルにコン...
最適化のアイデア最適化には主に 2 つの方向があります。再レンダリングの回数を減らします。 Reac...
最新のソリューション: -v /usr/share/zoneinfo/Asia/Shanghai:/...
ここでは主に、スタンドアロンのプログラムを生成できるspring-bootと、Mavenプラグインd...
Linux grep コマンドLinux の grep コマンドは、ファイル内の条件を満たす文字列を...
ページが非常に長い場合は、下にさらにコンテンツがあることをユーザーに知らせるために矢印が必要になるこ...