WeChat アプレットのカスタム スクロール ビューのサンプル コード

WeChat アプレットのカスタム スクロール ビューのサンプル コード

ミニプログラムカスタムスクロールビュースクロールバー

さっそくレンダリングを見てみましょう

レンダリング

wxml コード

 <スクロールビュー スクロールx 
  クラス="スクロールビュー" 
  バインドスクロール="bindScroll">
 <block wx:for="{{arr}}" wx:key="index">
 <view class="scroll-item">スクロールビュー{{index}}</view> 
 </ブロック>
 </スクロールビュー>
 
 <!-- スクロールバー -->
 <view class="slide">
 <view class='スライドバー'>
 <view class="slide-action" 
  スタイル="width:{{slideWidth}}rpx; margin-left:{{slideLeft<=1 ? 0 : slideLeft+'rpx'}};">
 </ビュー>
 </ビュー>
 </ビュー>
 

wxssコード

 ページ{
 高さ:100vh;
 背景: rgb(111, 80, 65)
 }
 .スクロールビュー{
 ディスプレイ: フレックス;
 幅: 100%;
 空白: ラップなし;
 パディングトップ: 20rpx;
 } 

 .スクロールアイテム:n番目の子(1){
 左マージン: 40rpx;
 } 

 .スクロールアイテム{
 表示: インラインブロック;
 幅: 550rpx;
 高さ: 463rpx;
 背景: rgba(199, 180, 165);
 境界線の半径: 20rpx;
 右マージン: 30rpx;
 色: #fff;
 } 

 。スライド{
 背景:rgb(111, 80, 65);
 幅:100%;
 パディングトップ:20rpx;
 }
 .スライド .スライドバー{
 幅:180rpx;
 マージン:0 自動;
 高さ: 4rpx;
 背景: rgba(255,255,255,.2);
 } 

 .スライド .スライドバー .スライドアクション{
 高さ:100%;
 背景:#fff;
 } 

jsコード

 /**
 * ページの初期データ */
 データ: {
 編曲: 10,
 スライド幅: '',
 スライド左: ''
 },

 /**
 * ライフサイクル機能 - ページの読み込みをリッスンする*/
 onLoad: 関数 (オプション) {
 // 比率を計算します this.calcRatio();
 },

 /**
 * 比率を計算する */
 計算比率() {
 var windowWidth = wx.getSystemInfoSync().windowWidth;
 // リストの合計の長さを計算します var totalLength = (this.data.arr * 580) + 40;
 // スライダーの比率を計算します var slideRatio = 180 / totalLength * (750 / windowWidth);
 /**
 * 画面の合計長さ / リストの合計長さ = スライダーとスクロールバーの長さの比率 * スライダーとスクロールバーの長さの比率 * スクロールリストの長さ = スライダーの幅 */
 var スライダーの幅 = 750 / 合計長さ * 180;
 this.setData({
 スライド幅: スライダー幅、
 合計長: 合計長、
 スライド比率: スライド比率
 })
 },

 /**
 * モニターのスクロール */
 バインドスクロール(e) {
 this.setData({
 スライド左: e.detail.scrollLeft * this.data.slideRatio
 })
 },

付録: スクロールビュー スクロール可能なビュー領域

要約する

WeChat ミニプログラムのカスタム スクロール ビューに関するこの記事はこれで終わりです。WeChat ミニプログラムのカスタム スクロール ビューに関する関連コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • WeChatアプレットはシンプルな計算機を実装する
  • WeChatアプレット+mqtt、esp8266温度と湿度の読み取り実装方法
  • 回転灯効果を実現するWeChatアプレットの例
  • WeChatミニプログラムがシームレスなスクロールを実現
  • マインスイーパゲームを記録するプロセス全体を実現するC言語
  • Java のシンプルなゲーム制作コード
  • js でパズルゲームを実装する
  • C# でシンプルなフライングチェスゲームを実装する
  • Linux 上で C 言語でスネーク ゲームを実装する
  • CocosCreatorでWeChatゲームを作成する方法

<<:  OpenShift のクイックインストールの詳細な手順

>>:  Win7 64 ビット版に MySQL 5.7 をダウンロードしてインストールする際によくある問題の概要

推薦する

VUEトークンの無効化プロセスの詳細な説明

目次ターゲット思考分析コード着陸要約するターゲットトークンの有効期限切れシナリオの処理トークンは、ユ...

ZabbixはSNMPに基づいてLinuxホストを監視します

序文: Linux ホストは、エージェント プログラムをインストールする場合でも、SNMP を使用す...

MySQLを監視するためのbinlogログ解析ツールの詳しい説明:Canal

Canal は、Java を使用して開発された Alibaba のオープンソース プロジェクトです...

Docker は MySQL をインストールし、中国語の文字化けの問題を解決します

目次1. MySQLイメージを取得する2. ダウンロードが完了したか確認する3. MySQLはローカ...

VUEの基本を理解するのに役立つ記事

目次VUEとはVueのコアプラグインVueルーターヴュークスアクシオス要素UI Vue フロントエン...

docker nginxコンテナの起動とローカルへのマウントの詳細な説明

まず、nginx コンテナ内の構造:コンテナを入力します: docker exec -it b511...

Linux システムによって報告される xfs_vm_releasepage 警告問題に対処する方法

問題の説明最近、いくつかのマシンで、一日のさまざまな時間に次の警告メッセージが表示されました。 3月...

MySQLは文字列の連結、インターセプション、置換、位置検索操作を実装しています

MySQL 文字列の連結、インターセプト、置換、および検索位置。よく使用される文字列関数:関数例示す...

Dockerスペースがいっぱいでコンテナに入れない場合の解決策

トラブル発生が突然で、業務も迫っていたため、現場のスクリーンショットを撮る時間がありませんでしたので...

なぜCSSをヘッドタグに配置する必要があるのか

考えてみてください。なぜcss 、 javascriptのようにbodyタグの末尾ではなく、 hea...

MySQLのファジークエリのような遅い速度を解決する方法

質問: インデックスは作成されているのに、Like ファジー クエリがまだ遅いのはなぜですか?インデ...

Mysql マスタースレーブ サービスの実装例を構成する

Mysql マスタースレーブ サービスの実装例を構成する### メインデータベースmy.cnfを構成...

フロントエンド開発における一般的なテクニックのまとめ

1. 記事タイトルリストの右側に日付を表​​示する方法:コードをコピーコードは次のとおりです。 &l...

Vue 開発プロジェクトで Font Awesome 5 を使用する方法

目次依存関係をインストールする構成使用1.アイコン検索ページに入る2. 使用したいアイコンの英語名を...

MySql8 WITH RECURSIVE 再帰クエリ親子コレクションメソッド

背景コメントに似た機能を開発する場合は、必要に応じてすべてのコメントのサブセットをクエリする必要があ...