jQuery をベースにリスト ループ スクロールを実装するためのヒント (超簡単)

jQuery をベースにリスト ループ スクロールを実装するためのヒント (超簡単)

良いアイデアを見つけたので記録しました。

私は以前、スクロール効果を実現するためにjQueryを使用したことがあります。これらの2つの記事では、記事1、記事2でそれぞれscrollLeft()とscrollTop()、scroll()を使用して、

後でデモを見て、これは素晴らしいアイデアだと思いました。リスト項目をスクロールするのに使えると思いました。効果はおそらく次のようになります。
ここに画像の説明を挿入

アイデアは次のとおりです。
最初の項目を最後まで移動し続けることができれば、残りの項目で隙間を埋めることができます。アニメーションを使用して埋めるプロセスを遅くすると、連続スクロールの視覚効果が得られます (配列から最初の要素を削除し、この要素を最後に追加することは、最初の要素を最後に移動することと同じです。要素の総数は変わりませんが、位置はすべて変更されます)

コード:

//入力するデータvar data = {
     情報項目: [
         「<strong>1 行目:</strong>Anzhian ...」
         「<strong>2 行目:</strong>サンシャイン レインボー リトル ホワイト ホースサンシャイン レインボー リトル ホワイト ホース」
         「<strong>第3行:</strong> 天と地の広大さ。天と地の広大さ。天と地の広大さ。天と地の広大さ。」
     ]
 }
 // ページにデータを動的に入力します var infoList = []
 (i = 0 とします; i < data.infoItem.length; i++){
     infoStr = `<div class="item">${data.infoItem[i]}</div>` とします。
     infoList.push(infoStr);
 }
 $(".info-wrapper").html(infoList.join(""))

 // 2秒ごとに実行するタイマーを設定します(1回変更)
 var タイマー = null;
 タイマー = setInterval(関数() {
     // 最初の行の項目を最後の行に移動し、他の項目を空いている行まで上に移動します var infoItemTmp = infoList.shift();
     $(".info-wrapper").append(infoItemTmp);
     $(".item:first").remove();
     infoList.push(infoItemTmp)

 }, 2000)

HTML とスタイル部分:

<div class="コンテナ">
        <div class="wrapper">
            <div class="info">
                <div class="info-wrapper"></div>
            </div>
        </div>
    </div>
。容器 {
    幅: 900ピクセル;
    高さ: 400px;
    境界線: 2px 実線 #eee;
    ディスプレイ: フレックス;
    コンテンツの中央揃え: 中央;
    アイテムの位置を中央揃えにします。
}

.ラッパー{
    幅: 500ピクセル;
    高さ: 300px;
    境界線: 1px 実線 #ccc;
    ディスプレイ: フレックス;
    コンテンツの中央揃え: 中央;
    コンテンツの位置を中央揃えにします。
}

。情報 {
    幅: 100%;
    高さ: 100%;
    ディスプレイ: フレックス;
    flex-direction: 列;
    コンテンツの両端揃え: スペースの間;
    コンテンツの位置を中央揃えにします。
}

.infoラッパー{
    幅: 100%;
    高さ: 100%;
    オーバーフロー: 非表示;
}

。アイテム {
    境界線: 2px 実線 #ccc;
    border-left: 4px 実線オレンジ;
    高さ: 80px;
    幅: 100%;
    ディスプレイ: フレックス;
    コンテンツの中央揃え: 中央;
    アイテムの位置を中央揃えにします。
    ボックスのサイズ: 境界線ボックス;
    境界線の半径: 8px;
    上マージン: 20px;
}

現在の影響は次のとおりです。

ここに画像の説明を挿入

さらにスライド効果アニメーション:

.item:最初の子 {
    アニメーション: 2 秒線形移動;
}
@keyframes 移動 {
    100% {
        上マージン: -80px;
    }
}

新しいアイテムを追加できる位置に到達するまでスライドを続け、新しいアイテムの追加をトリガーします。

// アニメーション中に設定された時間と同じ、2 秒ごとに実行 (1 回変更) するようにタイマーを設定します。var timer = null;
タイマー = setInterval(関数() {
    ($('.info').scrollTop() + $('.info').height() >= $('.info-wrapper').height()) の場合 {
        // 最初の行の項目を最後の行に移動し、他の項目を空いている行まで上に移動します var infoItemTmp = infoList.shift();
        $(".info-wrapper").append(infoItemTmp);
        $(".item:first").remove();
        infoList.push(infoItemTmp)
    }
}, 2000)

冒頭の効果を得ることができます

以上で、jQuery をベースにリスト ループ スクロールを実装するコツ (超簡単) についての記事は終了です。jQuery リスト ループ スクロールに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JQuery はシームレスな上向き円形スクロールリストの特殊効果を実現します
  • jQuery はニュースを表示するためのリストの自動スクロールを実装します
  • jQuery ループ スクロール ニュース リスト サンプル コード
  • jQueryはリストの自動円形スクロールを実装し、マウスがホバーするとスクロールを停止します。
  • jQuery を使用した連続および一時停止可能なスクロールの例
  • jQuery は、上下の円形スクロール プラグインの使用例を制御します (デモ ソース コードのダウンロード付き)
  • さまざまな JQuery ループスクロールテキストおよび画像効果コード

<<:  SecureCRT に基づくリモート Linux ホストへのファイルのアップロードとダウンロードのグラフィカルな手順

>>:  MySQL5.6 GTIDモードで同期レプリケーションエラーをスキップできない問題の解決方法

推薦する

ソフトウェア テスト - MySQL (VI: データベース関数)

1.MySQL関数1. 数学関数PI() # 円周率 (pi) の値を返します。デフォルトの小数点...

jsはショッピングサイトの虫眼鏡機能を実現します

この記事では、ショッピングサイトの虫眼鏡機能を実現するためのjsの具体的なコードを紹介します。具体的...

CSS で垂直方向の中央揃えを行う 7 つの方法の詳細なコード例

レイアウトを編集するとき、通常は水平センタリングと垂直センタリングを使用してデザインします。水平セン...

nginxのリソースキャッシュ設定の詳細な説明

私はずっとキャッシュについて学びたいと思っていました。結局のところ、キャッシュはフロントエンドのパフ...

MySQLで一意のサーバーIDを生成する方法

序文MySQL では、server-id を使用してデータベース インスタンスを一意に識別し、それを...

Node.jsとDenoの比較

目次序文Denoとは何ですか? Node.jsとの比較建築ESモジュール依存関係の管理TypeScr...

MySQL 8.0 の非表示インデックスの詳細な説明

言葉MySQL 8.0 は最初のバージョンから 4 年を経てリリースされました。バージョン 8.0 ...

vue-cli の紹介とインストール

目次1. はじめに2. vue-cli の紹介2.1 コマンドライン2.2 CLI サービス2.3 ...

ブラウザ内でHTMLタグを中央に配置するCSSスタイル

CSS スタイル:コードをコピーコードは次のとおりです。 <スタイル タイプ="te...

Vueは複数列レイアウトドラッグを実装します

この記事では、マルチカラムレイアウトドラッグを実装するためのVueの具体的なコードを参考までに共有し...

Bootstrap 3.0 の特殊効果の学習ノート(表示と非表示、フローティングの除去、閉じるボタンなど)

この記事の主な内容は次のとおりです。 1. 閉じるボタン2.キャレット3. フローティングを素早く設...

LinuxサーバーにVueプロジェクトをデプロイする

ケース1 vue-cliはvue3プロジェクトをビルドし、プロジェクトをLinuxサーバーにアップロ...

CentOS のファイルと権限の基本操作チュートリアル

序文始める前に、ファイル属性とファイル属性を変更する方法について簡単に理解しておく必要があります。 ...

Vue.js フロントエンドプロジェクト向け多言語ソリューションのアイデアと実践

目次1. 通常どのようなコンテンツを処理する必要があるか2. 基本的な考え方3. 具体的な実践の詳細...

Webpackを使用して複数ページのプログラムを構築するための実装手順

webpack を使用してシングルページのプログラムを構築することは非常に一般的ですが、実際の開発で...