ふるい抽選を実施するミニプログラム

ふるい抽選を実施するミニプログラム

この記事の例では、ふるい抽選を実装するためのミニプログラムの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

レンダリング

<!--pages/shaizi/index.wxml-->
<ビュークラス="コンテナ">
  <view class="shaizi_box {{activeTrue}}" style="transform: rotateX({{rotateX}}deg) rotateY({{rotateY}}deg) rotateZ({{rotateZ}}deg);">
    <view class="shaizi">1</view>
    <view class="shaizi">2</view>
    <view class="shaizi">3</view>
    <view class="shaizi">4</view>
    <view class="shaizi">5</view>
    <view class="shaizi">6</view>
  </ビュー>
  <text class="view"></text>
  <button bindtap="gamePlay">プレイ</button>
</ビュー>
// ページ/シャイジ/index.js
var dingshiqi1 = 0;
var dingshiqi2 = 0;
var dingshiqi3 = 0;
ページ({
 
  /**
   * ページの初期データ */
  データ: {
    アクティブTrue:"アクティブ1",
    回転X:0,
    回転Y:0,
    回転Z:0,
  },
 
  /**
   * ライフサイクル機能 - ページの読み込みをリッスンする*/
  onLoad: 関数 (オプション) {
    
  },
  ゲームプレイ:関数(){
    _that = this とします。
    this.setData({
      アクティブTrue:"アクティブ2",
      回転X:0,
      回転Y:0,
      回転Z:0,
    })
    クリア間隔(dingshiqi3)
    _possible = [ とします。
      { 値: 1、x: 0、y: 0 },
      { 値: 6、x: 180、y: 0 },
      { 値: 3、x: 0、y: -90 },
      { 値: 4、x: 0、y: 90 },
      { 値: 5、x: -90、y: 0 },
      { 値: 2、x: 90、y: 0 },
     ]
    // 乱数を抽出する準備をする let _random = Math.floor(Math.random() * 6);
    dingshiqi1 = setTimeout(() => {
      _that.setData({
        回転X:360,
        回転Y:250,
        回転Z:0,
      })
     }, 0);
     dingshiqi2 = setTimeout(() => {
      _that.setData({
        回転X:_可能[_ランダム].x、
        rotateY:_posible[_random].y、
      })
      dingshiqi3 = setTimeout(() => {
        _that.setData({
          アクティブTrue:"アクティブ1",
        })
      }, 4500);
     }, 800);
  },
  /**
   * ライフサイクル関数 - ページの初期レンダリングの完了を待機します*/
  onReady: 関数 () {
 
  },
 
  /**
   * ライフサイクル機能 - モニターページ表示 */
  onShow: 関数() {
 
  },
 
  /**
   * ライフサイクル機能 - ページの非表示を監視する*/
  onHide: 関数 () {
 
  },
 
  /**
   * ライフサイクル機能 - ページのアンインストールを監視する*/
  onUnload: 関数 () {
 
  },
 
  /**
   * ページ関連のイベント処理関数 - ユーザーのプルダウンアクションをリッスンする */
  onPullDownRefresh: 関数 () {
 
  },
 
  /**
   * ページ上のボトムイベントを処理する関数*/
  onReachBottom: 関数 () {
 
  },
 
  /**
   * ユーザーは右上隅をクリックして共有します*/
  onShareAppMessage: 関数 () {
 
  }
})
/* ページ/shaizi/index.wxss */
@keyframes 回転 {
  に {
   変換: 回転X(360度) 回転Y(250度);
  }
 }
 @keyframes shaiziCss{
  20%
   変換: rotateX(20deg);
  }
  60%
   変換: 回転X(20度) 回転Y(200度);
  }
  100%{
   変換: rotateX(100deg) rotateY(1000deg) rotateZ(-100deg);
  }
 }
 .shaizi_box {
  幅: 200rpx;
  高さ: 200rpx;
  マージン: 200rpx 自動;
  位置: 相対的;
  変換スタイル: 3D を保持します。
  アニメーション期間: 3秒;
  アニメーションタイミング関数: linear;
  遷移: すべて 1;
 }
.shaizi_box.active1{
  アニメーション: 5 秒回転、線形 0 秒、無限交互 !important;
}
.shaizi_box.active2{
  アニメーション: shaiziCss 2s !important;
}
.shaizi_box .shaizi {
  幅: 200rpx;
  高さ: 200rpx;
  ディスプレイ: フレックス;
  位置: 絶対;
  左: 0;
  上: 0;
  境界線: 1px実線 #000;
  背景: rgb(253, 250, 250);
  境界線の半径: 20rpx;
  フォントサイズ: 100rpx;
  色: 赤;
  テキスト配置: 中央;
 }
 .shaizi:n番目の子(1) {
  コンテンツの中央揃え: 中央;
  アイテムの位置を中央揃えにします。
  変換: translateZ(100rpx);
 }
 .shaizi:n番目の子(2) {
  コンテンツの両端揃え: スペースを空ける;
  アイテムの位置を中央揃えにします。
  変換: 回転X(-90度) 移動Z(100rpx);
 }
 .shaizi:n番目の子(3) {
  コンテンツの両端揃え: スペースを空ける;
  アイテムの位置を中央揃えにします。
  flex-wrap: ラップ;
  変換: 回転Y(90度) 移動Z(100rpx);
 }
 .shaizi:n番目の子(4) {
  flex-wrap: ラップ;
  コンテンツの中央揃え: 中央;
  アイテムの位置を中央揃えにします。
  変換: 回転Y(-90度) 移動Z(100rpx);
 }
 .shaizi:n番目の子(5) {
  flex-wrap: ラップ;
  コンテンツの中央揃え: 中央;
  アイテムの位置を中央揃えにします。
  変換: rotateX(90deg) translateZ(100rpx);
 }
 .shaizi:n番目の子(6) {
  flex-wrap: ラップ;
  コンテンツの中央揃え: 中央;
  アイテムの位置を中央揃えにします。
  変換: rotateX(-180deg) translateZ(100rpx);
}

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

以下もご興味があるかもしれません:
  • WeChatアプレットはふるいを振る効果を実現

<<:  MySQLdump コマンドを使用した MySQL データの移行

>>:  Linux にバイナリ MySQL をインストールして MySQL パスワードをクラックする方法

推薦する

シーケンス関数を実装する MySQL コード

MySQLはシーケンス関数を実装する1. シーケンスレコードテーブルを作成する テーブル `sys_...

HTMLデザインパターンの日々の勉強ノート

HTML デザインパターン学習ノート今週は主にHTMLデザインパターンを学びました。学習内容をまとめ...

Apache ab を使用して HTTP パフォーマンス テストを実行する

MacにはApache環境が付属していますターミナルを開き、sudo apachectl -v と入...

CSS 位置固定左と右の二重配置実装コード

CSS 位置position 属性は、要素の配置タイプを指定します。位置プロパティには 5 つの値が...

CSS の優先順位に関する詳細な紹介

CSS の優先順位について話す前に、CSS とは何か、CSS が何に使用されるのかを理解する必要があ...

MySQLは数百万のシミュレーションデータ操作コードを自動的に挿入します

私はデータベースツールとして Navicat を使用しています。他のものも同様です。 1. Navi...

CSS で波の効果を作成するためのアイデア

以前、純粋な CSS を使用して波の効果を実現する方法をいくつか紹介しました。それらについては、次の...

VMware 仮想マシンのネットワークの問題の解決方法

目次1. 問題の説明2. 問題解決1. 仮想マシンシステムのインストール時にネットワークがない場合2...

HTML CSS に基づく検索アイコン付き検索ボックス機能を実装する

序文フロントエンドで非常に便利な、小さなアイコン付きの検索ボックスを作成する方法をご紹介します。エフ...

ページにデータを表示するReactメソッド

目次親コンポーネントリストボックスリストコンポーネントボタンコンポーネント PageButton昨年...

JSの矢印関数におけるこのポイントの詳細な説明

矢印関数は ES6 の新機能です。独自の this はありません。その this ポイントは外部のコ...

Node.jsがES6モジュールを処理する方法の詳細な説明

目次1. 2つのモジュールの違い2. Node.jsとの違い3. CommonJSモジュールの読み込...

MySQL InnoDB ロックの概要

目次1. 共有ロックと排他ロック2. 意図ロック3. レコードロック4. ギャップロック5. ネクス...

MySQL 上級学習インデックスの長所と短所、使用ルール

1. インデックスの利点と欠点利点: 高速検索、高速グループ化および並べ替えデメリット: ストレージ...

MySQL ユーザー権限管理の分析例

この記事では、MySQL ユーザー権限管理の例について説明します。ご参考までに、詳細は以下の通りです...