WeChatアプレットがテキストスクロールを実装

WeChatアプレットがテキストスクロールを実装

この記事の例では、WeChatアプレットでテキストスクロールを実装するための具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

wxml:

<view>表示後、再度表示します:</view>
<view class="example">
 <ビュークラス="ボックス">
 <view class="text" style="{{orientation}}:{{marqueeDistance}}px;フォントサイズ: {{size}}px;">
  {{文章}}
 </ビュー>
 </ビュー>
</ビュー>
<view>白い枠線が表示されたら、次のように表示されます:</view>
<view class="example">
 <ビュークラス="ボックス">
 <view class="text" style="{{orientation}}:{{marqueeDistance2}}px;フォントサイズ: {{size}}px;">
  <テキスト>{{テキスト}}</テキスト>
  <text wx:if="{{marquee2copy_status}}" style="margin-left:{{marquee2_margin}}px;">{{text}}</text>
 </ビュー>
 </ビュー>
</ビュー>

色:

。例 {
 表示: ブロック;
 幅: 100%;
 高さ: 100rpx;
}

。箱 {
 幅: 100%;
 位置: 相対的;
}

。文章 {
 空白: ラップなし;
 位置: 絶対;
 上: 0;
}

js:

ページ({


 データ: {
 テキスト: 'スクロールテキスト 1234567890abcdefghijklmnopqrstuvmxyz',
 marqueePace: 1, //スクロール速度 marqueeDistance: 0, //初期スクロール距離 marqueeDistance2: 0,
 marquee2copy_status: 偽、
 マーキー2_マージン: 60,
 サイズ: 14,
 orientation: 'left', //スクロール方向 interval: 20 //時間間隔},
 onShow: 関数() {
 // ページ表示 var vm = this;
 var length = vm.data.text.length * vm.data.size; //テキストの長さ var windowWidth = wx.getSystemInfoSync().windowWidth; //画面の幅 vm.setData({
  長さ: 長さ、
  ウィンドウ幅: ウィンドウ幅、
  marquee2_margin: length < windowWidth ? windowWidth - length : vm.data.marquee2_margin //テキストの長さが画面の長さより短い場合は、パディングを追加する必要があります});
 vm.run1(); // 単語の水平行をスクロールした後、元の方向にスクロールします vm.run2(); // 最初の単語が消えて、すぐに右から表示されます },
 実行1: 関数() {
 var vm = this;
 var 間隔 = setInterval(関数() {
  (-vm.data.marqueeDistance < vm.data.length) の場合 {
  vm.setData({
   マーキー距離: vm.data.marqueeDistance - vm.data.marqueePace、
  });
  } それ以外 {
  clearInterval(間隔);
  vm.setData({
   マーキー距離: vm.data.windowWidth
  });
  vm.run1();
  }
 }, vm.data.interval);
 },
 実行2: 関数() {
 var vm = this;
 var 間隔 = setInterval(関数() {
  (-vm.data.marqueeDistance2 < vm.data.length) の場合 {
  // テキストがmarquee2_margin=30pxの白い端までスクロールしたら、vm.setData({
   マーキー距離2: vm.data.マーキー距離2 - vm.data.マーキーペース、
   marquee2copy_status: vm.data.length + vm.data.marqueeDistance2 <= vm.data.windowWidth + vm.data.marquee2_margin、
  });
  } それ以外 {
  if (-vm.data.marqueeDistance2 >= vm.data.marquee2_margin) { // 2番目のテキストが左端までスクロールするとvm.setData({
   marqueeDistance2: vm.data.marquee2_margin // 直接再ロール });
   clearInterval(間隔);
   vm.run2();
  } それ以外 {
   clearInterval(間隔);
   vm.setData({
   マーキー距離2: -vm.data.windowWidth
   });
   vm.run2();
  }
  }
 }, vm.data.interval);
 }


})

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

以下もご興味があるかもしれません:
  • WeChatアプレットのスクロールビューの非表示のスクロールバーの詳細な説明
  • WeChatアプレットのスクロールビューでスクロールの浸透を実装し、スクロールを防止する方法
  • WeChatアプレットのスクロールビューの水平スクロールの実際的な落とし穴とスクロールバーを非表示にする実装の詳細な説明
  • WeChatアプレット上部のスクロール可能なナビゲーション効果
  • WeChatアプレットのスクロールビューコンポーネントはスクロールアニメーションを実装します
  • WeChat アプレット - スクロールメッセージ通知のサンプルコード
  • WeChatアプレットのスクロールタブで左右のスライド切り替えを実現
  • WeChatアプレットが複数行テキストのスクロール効果を実現
  • WeChatアプレットは水平および垂直スクロールを実現
  • WeChatミニプログラムがシームレスなスクロールを実現

<<:  Windows Server 2012 でデスクトップ上の一般的なアイコンを表示または非表示にする方法

>>:  InnoDB エンジンのパフォーマンスを最適化するための my.cnf パラメータ構成

推薦する

MySQL インデックスの失敗を引き起こす一般的な書き込み方法の概要

序文最近、古いプロジェクトから残ったいくつかの SQL 最適化の問題に対処するのに忙しくしています。...

VirtualBox CentOS7.7.1908 Python3.8 ビルド Scrapy 開発環境 [グラフィックチュートリアル]

目次環境CentOSをインストールするyum 国内ミラーソースを構成するサードパーティの依存関係をイ...

CSS でショートカット プロパティを記述する際は、トラブルの順序に注意してください (落とし穴を避けるため)

ショートハンドプロパティは、複数のプロパティに同時に値を割り当てるために使用されます。たとえば、fo...

Mysql binlog ログファイルが大きすぎる場合の解決策

目次1. 関連するbinlog設定2. binlogに関する詳細設定2.1 バイナリログモードの変更...

MySQL サーバーの接続、切断、および cmd 操作

mysql コマンドを使用して MySQL サーバーに接続します。 MySQL サーバーが起動したら...

Nginx 仮想ホスト (IP ベース) を構成する 3 つの方法の詳細な説明

Nginx は、IP ベースの仮想ホスト構成、ポート ベースの仮想ホスト構成、ドメイン名ベースの仮想...

Vueコンポーネント登録方法の解釈

目次概要1. グローバル登録2. 現地登録3. モジュールシステムへのローカル登録概要コンポーネント...

HTML テーブル マークアップ チュートリアル (15): テーブル タイトル

<br />このタグを使用すると、表のタイトルを直接追加し、タイトル テキストの配置プロ...

MySQL 8.0.18 のさまざまなバージョンのインストールとインストール中に発生した問題 (要点の要約)

概要: MYSQLの問題解決記録:どのようなインストール方法 (rpm、gz、gz.xz) を使用す...

MySQLループは数千万のデータを挿入する

1. テストテーブルを作成する テーブル `mysql_genarate` を作成します ( `id...

フローティングメニュー、上下スクロール効果を実現できます

コードはさらに合理化できますが、時間の制約があるため、まずはここで投稿して、自分で最適化してメニュー...

SQL と NoSQL の違いのまとめ

主な違い: 1. タイプSQL データベースは主にリレーショナル データベース (RDBMS) とし...

フロントエンドとバックエンドを分離した nginx 構成を展開するための完全な手順

序文決まり文句です。ここでは、フロントエンドとバックエンドの分離についての私の理解についてお話ししま...

MySQLデータベースについて学びましょう

目次1. データベースとは何ですか? 2. データベースの分類は? 3. データベースとデータ構造の...