この記事では、トップに戻るボタンを実装するためのJavaScriptの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。 1.まず足場を組む { テキスト装飾: なし; } 体 { 高さ: 5000ピクセル; } .トップに戻る{ 位置: 固定; 下: 80px; 右: 80px; 幅: 80ピクセル; 高さ: 80px; 背景色: #ccc; フォントサイズ: 20px; テキスト配置: 中央; 上部パディング: 12px; ボックスのサイズ: 境界線ボックス; カーソル: ポインタ; 色: #000; /* まずボタンを非表示にする */ /*表示: なし;*/ } <a href="javascript:;" class="backtotop" id="backtotop">トップに戻る</a> 2. 論理部分 マウスが「トップに戻る」ボタンをクリックすると、50 ミリ秒ごとに一定の「速度」でトップに戻ります。トップに戻った後はクリアする必要があります。そうしないと、ページが下に引っ張られるとすぐに自動的にトップに戻ります。ここでは、setInterval と clearInterval の 2 つのメソッドが使用されます。前者はタイマーを設定するためのもので、後者はタイマーをクリアするためのものです。 .トップに戻る{ /* まずボタンを非表示にする */ 表示: なし; } (関数() { // 1. 操作する要素を取得します。let oBackBtn = document.querySelector("#backtotop"); // 2. Webページのスクロールを監視する window.onscroll = function() { // スクロール距離を取得します。let offsetY = getPageScroll().y; // コンソールログ(オフセットY); // ロールバックボタンを表示するかどうかを決定します if (offsetY >= 200) { oBackBtn.style.display = "ブロック"; } それ以外 { oBackBtn.style.display = "なし"; } } timerId を null にします。 // 3. ロールバックボタンのクリックをリッスンする oBackBtn.onclick = function() { //タイマーの競合を防ぐために、最初にテーブルを閉じるように設定します。clearInterval(timerId); //タイマーを設定する timerId = setInterval(function() { let begin = getPageScroll().y; //現在の位置 let target = 0; //ターゲット位置 let step = (target - begin) * 0.3; 開始 += ステップ; //終了するかどうかを判定 if (Math.abs(Math.floor(step)) <= 1) { //タイマーをクリアする clearInterval(timerId); // window.scrollTo(x, y); // x は Web ページを水平方向にスクロールする位置を示します // y は Web ページを垂直方向にスクロールする位置を示します window.scrollTo(0, 0); 戻る; } ウィンドウを0にスクロールします。 }, 50); }; 関数 getPageScroll() { x, y とします。 if (window.pageXOffset) { x = ウィンドウのページXオフセット; y = ウィンドウのYオフセット; } そうでない場合 (document.compatMode === "BackCompat") { ドキュメントの左端をスクロールします。 ドキュメントの先頭部分をスクロールします。 } それ以外 { ドキュメント要素の左スクロール。 y = document.documentElement.scrollTop; } 戻る { x: x, y: y } } })(); 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: IIS を使用して X-Forwarded-For ヘッダー (XFF) を呼び出して訪問者の実際の IP を記録する 2 つの方法
nginx トラフィック制御レート制限は非常に便利ですが、Nginx では誤解され、誤って設定される...
Docker を正式に使用する前に、まず Docker でよく使用されるコマンドに慣れておきましょう...
目次1. イベントとは何ですか? 2. イベントの使い方3. バインドタップとキャッチタップの違い4...
MySQL には多くのデータベース管理ツールがあります。作業効率の向上に役立つ優れた GUI ツール...
1. システム内で開いているファイルの最大数を確認する #現在のリソース制限設定を表示する ulim...
Vmvare が仮想マシンのディスク サイズを設定した後、ディスク領域が不足していることがわかりまし...
mysqlはブール型を返します最初のケースでは、直接戻ります select id='22a...
この記事の例では、クールなフロントエンドページのスライド検証の具体的なコードを参考までに共有していま...
NetEase Blog で HTML を使用する場合、テンプレートに直接コードを追加できることは...
訪問者があなたのウェブサイトを覚えておくのに役立つ3つの便利なコード。お気に入りに追加するためのヒン...
サーバーも 2 つあります。準備:コンテナのホスト名を設定する consul: kv タイプのストレ...
IE 8 以降では互換モードが追加され、これを有効にすると IE の下位バージョンでレンダリングされ...
この記事を読む前に、ボリューム、バインドマウント、tmpfs マウントの基本を理解しておいてください...
コードの説明1.1 http:www.baidu.test.com のデフォルトは 80 で、リバー...
この記事の例では、登録ページの効果を実現するためのVueの具体的なコードを参考までに共有しています。...