JavaScript で長い画像のスクロール効果を実装する

JavaScript で長い画像のスクロール効果を実装する

この記事では、JavaScriptの長い画像スクロールの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

長い画像のスクロールにはタイマーがかかります。

まずタイマーを確認しましょう:

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイマーレビュー</title>
</head>
<本文>
    <button id="start">開始</button>
    <button id="stop">閉じる</button>
    <script type="text/javascript">
        var start = document.getElementById("start");
        var stop = document.getElementById("stop");
        var num = 0、タイマー = null;

        start.onclick = 関数 (){
            // タイマーを使用する場合は、まず元のタイマーをクリアしてからオンにします。以下の clearInterval(timer); をコメントアウトしてから、オンにするボタンを複数回クリックして、効果を比較してみてください。 clearInterval(timer);
            タイマー = setInterval(関数(){
                数値++;
                console.log(数値);
            },1000)
        }
        stop.onclick = 関数 (){
            タイマーの間隔をクリアします。
        }
    </スクリプト>
</本文>
</html>

タイマーの内容を確認した後、長い画像のスクロールのコードを見てみましょう。

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>長い画像のスクロール効果</title>
    <スタイル>
        *{
            パディング: 0;
            マージン: 0;
        }
        体{
   背景色: #000;
  }
        #箱{
   幅: 658ピクセル;
   高さ: 400px;
   境界線: 1px 実線 #ff6700;
   マージン: 100px 自動;
   オーバーフロー: 非表示;
   位置: 相対的;
  }
        #ボックス画像{
   位置: 絶対;
   上: 0;
   左: 0;
  }
        #ボックススパン{
            位置: 絶対;
            幅: 100%;
            高さ: 50%;
            左: 0;
            カーソル: ポインタ;
        }
        #ボックス #トップ{
   上: 0;
  }
  #ボックス #下部{
   下部: 0;
  }
    </スタイル>
</head>
<本文>
    <div id="ボックス">
        <img src="img/timer.jpeg" alt="">
        <span id="top"></span>
        <span id="bottom"></span>
    </div>
    <script type="text/javascript">
        // 1. イベント ソースを取得します。var box = document.getElementById('box');
  var pic = document.getElementsByTagName('img')[0];
  var divTop = document.getElementById('top');
  var divBottom = document.getElementById('bottom');

        // 2. イベントを追加します。var num = 0、timer = null;
        divBottom.onmouseover = 関数 () {
            // 以前の加速効果をクリアします clearInterval(timer);
   // 画像を下にスクロールさせる timer = setInterval(function () {
     数値 -= 10;
     // この -3666 は画像に応じて調整されます if (num >= -3666) {
     pic.style.top = num + 'px';
    }それ以外{
     タイマーの間隔をクリアします。
    }
   },50);
  }
  divTop.onmouseover = 関数 () {
   タイマーの間隔をクリアします。
   // 画像を上にスクロールさせる timer = setInterval(function () {
     数値 += 10;
    if(数値 <= 0){
     pic.style.top = num + 'px';
    }それ以外{
     タイマーの間隔をクリアします。
    }
   },100);
  }
  // マウスが離れたらスクロールを停止する box.onmouseout = function () {
   タイマーの間隔をクリアします。
  }
    </スクリプト>
</本文>
</html>

効果の写真はここには載せませんが、必要なら自分で試してみてください(長い写真を見つけるのを忘れないでください)

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JSは長い画像を上下にスクロールする効果を実現します
  • JS画像のシームレスでスムーズなスクロールコード
  • jsは画像のシームレスなスクロールを実現します
  • js で実装された Flash スクロールおよび回転表示画像コード ジェネレーター
  • JS は div 内のテキストまたは画像の自動ループスクロール コードを実装します
  • div+cssレイアウトで画像の連続スクロールを実装するjsコード
  • js jquery で画像用の連続スクロール コードを作成しました
  • 画像ループスクロール効果を実現する JavaScript コード
  • 画像の水平スクロール効果を実現する JS サンプルコード
  • jsは画像の左右スクロール効果を実現します

<<:  MySQL は低速クエリを可能にします (EXPLAIN SQL ステートメントの使用の概要)

>>:  MySQL 実験: explain を使用してインデックスの傾向を分析する

推薦する

テーブルを使用してフォームコントロールの形式を調整し、見栄えを良くします。

自分でウェブページを書きたいので、HTML 言語についても少し勉強しています。これは、大学時代にウェ...

Linux での MySQL データベースのマスター スレーブ同期レプリケーション構成

Linux での MySQL データベースのマスター/スレーブ同期構成の利点は、この方法をバックアッ...

Linuxのsortコマンドの複数のパラメータを理解するための1つの質問

sort コマンドは非常によく使用されますが、-o、-n、-u、-r などの多くのパラメーターがあり...

MySQL DDLステートメントの使用

序文SQL の言語分類には主に以下の種類があります。 DDLデータ定義言語作成、削除、変更データ定義...

vmware workstation12 インストール CentOS プロンプト VMware Player と Device/Credential Guard に互換性がない、理由と解決策

最新バージョンの WIN10 では、Microsoft は仮想化コンテナに基づくセキュリティ メカニ...

Vue 関数のアンチシェイクとスロットリングの正しい使用方法

序文1. デバウンス: 高頻度イベントがトリガーされた後、関数は n 秒以内に 1 回だけ実行されま...

Vueアイコンセレクターのサンプルコード

出典: http://www.ruoyi.vip/ 'vue' から Vue をイン...

CSS transform-originプロパティを理解する

序文最近、花火アニメーションを作成しました。花火が散るアニメーションです。アニメーションの実装中、花...

CSS の flex と inline-flex の違いの詳細な説明

inline-flex は inline-block と同じです。内部要素用の display:fl...

Centos7 での DNS サーバーの構築の概要

目次1. プロジェクト環境: 2: DNSサーバーの設定i: 前方解析を構成する: ii: 逆解像度...

HTML初心者や初級者向けの提案。専門家は無視してかまいません。

感想:私はバックエンド開発者です。静的 (HTML) ページを取得すると、ページ構造と命名規則が極端...

Docker ベースの MySQL マスタースレーブレプリケーション環境を構築するための実装手順

1. はじめに以前のプログラム アーキテクチャは次の形式になります。プログラムのサイズが大きくなると...

複数のサーバーにNginxリバースプロキシを実装する方法

Nginx は複数のサーバーをリバース プロキシします。つまり、nginx に異なるリクエストを送信...

ユーザー エクスペリエンス デザイナーとは誰ですか?

怖いですね! 写真の翻訳: (内側から外側へ)最初のレイヤー:ユーザーエクスペリエンス第2層:コンテ...

JSはビデオの再生速度を制御するための簡単なサンプルコードを実装します

導入以前、ある問題に気づきました。学習ビデオを視聴しているとき、動きが遅すぎる、先生が黒板に書くのに...