スクラッチ宝くじの例を実現する JavaScript キャンバス

スクラッチ宝くじの例を実現する JavaScript キャンバス

この記事では、スクラッチ効果を実現するためのJavaScriptキャンバスの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

レンダリング

HTMLコード:

<div class="ggk">
        <span id="span">200元</span>
        <キャンバスid="キャンバス"></キャンバス>
</div>

CSSコード:

.ggk {
            幅: 200ピクセル;
            高さ: 100px;
            境界線: 1px実線 #000;
            マージン: 20px 自動;
            色: 赤;
            位置: 相対的;
        }
 
        .ggk スパン {
            位置: 絶対;
            幅: 100%;
            高さ: 100%;
            テキスト配置: 中央;
            フォントサイズ: 50px;
            行の高さ: 100px;
        }
 
        #キャンバス {
            位置: 絶対;
            左: 0;
            上: 0;
        }

jsコード:

var キャンバス = document.getElementById("キャンバス")
        初期化()
        関数init() {
            キャンバスの幅 = 200;
            キャンバスの高さ = 100;
            var ctx = canvas.getContext("2d")
            // グレーのレイヤーでカバーする ctx.save();
            ctx.fillStyle = 'rgb(100,100,100)'
            ctx.fillRect(0, 0, 200, 100)
            描画(ctx)
            プロ()
        }
 
        // ランダムコンテンツ function pro() {
            var span = document.getElementById("span")
            var arr = ["100元", 'ご愛顧ありがとうございます', '200元', 'ご愛顧ありがとうございます', 'ご愛顧ありがとうございます', 'ご愛顧ありがとうございます', '500万', 'ご愛顧ありがとうございます']
            var num = Math.floor(Math.random() * (arr.length - 1))
            var テキスト = arr[数値]
            span.innerHTML = テキスト
        }
 
        関数draw(ctx){
            //クリックイベント canvas.onmousedown = function(e){
                // 移動イベント var downX = e.offsetX
                var 下Y = e.offsetY
                ctx.beginPath()
                // ctx.globalCompositeOperation = 'destination-out'
                ctx.lineWidth = 10;
                ctx.moveTo(下X、下Y)
 
                キャンバス.onmousemove = 関数(e){
                    var x = e.offsetX
                    var y = e.offsetY
                    // ctx.lineTo(x,y)
                    ctx.clearRect(x,y,20,20)
                    ctx.ストローク()
 
                }
            }
            // マウスポップアップイベント canvas.onmouseup = function(){
                キャンバス.onmousemove = null
            }
        }

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

以下もご興味があるかもしれません:
  • HTML+CSS+JavaScript でガールフレンド版のスクラッチ カードを作成します (一度見ればすぐに覚えられます)
  • スクラッチ効果を実現するJavaScript
  • スクラッチチケットを実装するためのネイティブJavaScript
  • ウェブスクラッチ宝くじの効果を実現する20行のJSコード
  • モバイル デバイスでスクラッチ カードを実装する方法 (js+HTML5)
  • js HTML5 モバイル スクラッチ コード

<<:  Dockerイメージが消える問題を解決する

>>:  MySQL でのトリガーとカーソルの紹介と使用

推薦する

Linux プロセスの CPU 使用率が 700% に達し、終了できない場合の解決策

目次1. 問題の発見2. プロセスの詳細情報を表示する3. 解決策4. 大法を再開する1. 問題の発...

JavaScript でプライベート変数を宣言する 2 つの方法

序文JavaScript は、キーワードを使用してプライベート変数を宣言できる他の言語とは異なります...

Springboot アプリケーションを迅速にデプロイするために Docker とアイデアを統合する詳細なプロセス

目次1. はじめに2. 環境とツール3. Dockerをインストールし、リモート接続を構成する4. ...

mySQLキーワードの実行優先度の説明

以下のように表示されます。表から条件フィールドでグループ化仮想テーブルとフィールドを作成し、フィール...

Windowsにmysql5.7をインストールする方法

まずmysqlの圧縮バージョンをダウンロードします。公式ダウンロードアドレスは123WORDPRES...

MySQLインデックスが使用されない状況のまとめ

MySQL のインデックスの種類一般的に、次の 4 つのカテゴリに分類できます。通常のインデックス:...

CentOS8でルートパスワードを素早く変更する方法

Centos8仮想マシンを起動し、上下キーを押して図1のインターフェースの最初の行を選択します。図1...

Vueカスタムツリーコントロールの使い方の詳細な説明

この記事では、Vueカスタムツリーコントロールの使い方を参考までに紹介します。具体的な内容は次のとお...

React 関数コンポーネントのパフォーマンス最適化のアイデアの詳細な説明

最適化のアイデア最適化には主に 2 つの方向があります。再レンダリングの回数を減らします。 Reac...

MySQL5.7.17 winx64 インストール バージョン構成方法 Windows Server 2008 R2 でのグラフィック チュートリアル

参考までに、Winでmysql5.7をインストールします。具体的な内容は次のとおりです。 @Auth...

HTML テーブル マークアップ チュートリアル (18): テーブル ヘッダー

<br />ヘッダーはテーブルの最初の行を参照します。ヘッダー内のテキストは中央揃えで太...

MySQL 8.0.11 MacOS 10.13 のインストールと設定方法のグラフィックチュートリアル

MacにMySQLデータベースをインストールし、環境変数を設定する手順を参考までに記録します。具体的...

Linux システムの最適化 (カーネルの最適化) に関するいくつかの提案

スワップを無効にするサーバーがデータベース サービスまたはメッセージ ミドルウェア サービスを実行し...

HTMLページが3秒後に自動的にジャンプする3つの一般的な方法

実際には、N 秒後にページを自動的にジャンプさせるにはどうすればよいかという問題によく遭遇します。私...

MySQL ストアドプロシージャの長所と短所の分析

MySQL バージョン 5.0 ではストアド プロシージャのサポートが開始されました。ストアド プロ...