検証コードケースのjs実装

検証コードケースのjs実装

この記事の例では、検証コードを実装するためのjsの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

CSSコード:

入力{
            幅: 200ピクセル;
            高さ: 32px;
            境界線: 1px実線 #000;
            ボックスのサイズ: 境界線ボックス;
        }
        #c1{
            垂直位置合わせ: 中央;
            ボックスのサイズ: 境界線ボックス;
            カーソル: ポインタ;
        }
        #ボタン{
            表示: ブロック;
            上マージン: 20px;
            高さ: 32px;
            フォントサイズ: 16px;
 
        }

HTMLコード:

<div class="code">
        <input type="text" value="" id="inputValue" placeholder="確認コードを入力してください(大文字と小文字は区別されません)">
        <canvas id="c1" width="100" height="30" style="border:1px solid black"></canvas>
        <br>
        <button id="btn">送信</button>
</div>

jsコード:

いくつかのjQueryメソッドが使用されています。最初にjQueryをインポートすることを忘れないでください。

$(関数(){
            //ランダムな検証コードを保存する var showNum = []
 
            描画(表示数)
 
            $("#c1").click(関数(){
                描画(表示数)
            })
            $("#btn").click(関数(){
                var s = $("#inputValue").val().toLowerCase()
                var s1 = showNum.join("")
                s==s1の場合{
                    alert("送信に成功しました")
                }それ以外{
                    alert("認証コードエラー")
                }
                描画(表示数)
            })
 
 
            // キャンバスにランダムな検証コードをカプセル化する function draw(showNum){
                // キャンバスを取得
                var キャンバス = $("#c1")
                var ctx = キャンバス[0].getContext("2d")
                // キャンバスの幅と高さを取得します var canvas_width = canvas.width()
                var キャンバスの高さ = キャンバスの高さ()
                // 以前に描画した内容をクリアします // 0,0 クリアする開始座標 // 四角形の幅と高さ ctx.clearRect(0,0,canvas_width,canvas_height)
                // 描画を開始します var scode = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,1,2,3,4,5,6,7,8,9,"
                var arrCode = scode.split(",")
                var arrLength = arrCode.length
                (var i = 0;i<4;i++){
                    var インデックス = Math.floor(Math.random()*arrCode.length)
                    var txt = arrCode[index] // ランダムに文字を選択します showNum[i] = txt.toLowerCase() // 小文字に変換して検証コード配列に格納します // 文字の描画位置の制御を開始します var x = 10 +20*i // 各検証コード描画の開始点の x 座標 var y = 20 + Math.random()*8 // 開始点の y 座標 ctx.font = "bold 20px Microsoft YaHei"
                    // 文字の回転を開始します var deg = Math.random*-0.5
                    // 描画されたコンテンツを傾ける効果を得るには、まずキャンバスを平行移動する必要があります。目的は、回転ポイントをコンテンツが描画される場所に移動することです。ctx.translate(x,y)
                    ctx.rotate(度)
                    // 描画のランダムな色を設定する ctx.fillStyle = randomColor()
                    ctx.fillText(txt,0,0)
 
                    // キャンバスを復元する ctx.rotate(-deg)
                    ctx.translate(-x,-y)
 
                }
                (var i = 0;i<30;i++){
                    もし(i<5){
                        // 線を描く ctx.strokeStyle = randomColor()
                        ctx.beginPath()
                        ctx.moveTo(Math.random()*canvas_width,Math.random()*canvas_height)
                        ctx.lineTo(Math.random()*canvas_width,Math.random()*canvas_height)
                        ctx.ストローク()
                    }
                    // ポイントを描画 ctx.strokeStyle = randomColor()
                    ctx.beginPath()
                    var x = Math.random()*canvas_width
                    var y = Math.random()*canvas_height
                    ctx.moveTo(x,y)
                    ctx.lineTo(x+1,y+1)
                    ctx.ストローク()
 
                }
 
 
            }
 
            // ランダムカラー関数 randomColor(){
                var r = Math.floor(Math.random()*256)
                var g = Math.floor(Math.random()*256)
                var b = Math.floor(Math.random()*256)
                `rgb(${r},${g},${b})` を返す
 
            }
 
        })

これはランダムな例です。間違いがあれば、お気軽にアドバイスをください。

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

以下もご興味があるかもしれません:
  • ページ検証コードを生成する JSP メソッド [コード付き]
  • JavaScript 検証コードの例コード (効果図付き)
  • jsはシンプルな検証コードを実装します
  • jsはクリックして確認コードを取得するカウントダウン効果を実現します
  • JS検証コード機能を実装する3つの方法
  • jsで生成された検証コードの実装と技術分析
  • jsは検証コードを生成し、フロントエンドで直接判断します
  • js+ca​​nvasはスライディングパズルの検証コードの機能を実現します
  • JSはグラフィック検証コードの実装コードを作成します
  • jsはログイン登録ボックスの携帯電話番号と確認コードの検証を実装します(フロントエンド部分)

<<:  Dockerイメージのエクスポートとインポート操作

>>:  インデックスを使用して数千万のデータを持つ MySQL のクエリ速度を最適化する

推薦する

ページキャッシュを無効にするいくつかの方法を共有する

本日、開発中に、顧客からページをキャッシュしないように要求される方法に遭遇しました。調べたところ、ペ...

Alibaba Cloud ESC サーバー シングルノード MySQL の Docker デプロイメント

1. msyqlの高速バージョンをダウンロードする docker pull hub.c.163.co...

MySQL データベース分離レベルと MVCC の詳細な説明

目次1. 分離レベルコミットされていない読み取りREAD COMMITED (コミット読み取り/非反...

SQL 最適化チュートリアル: IN クエリと RANGE クエリ

序文「High Performance MySQL」では、インデックスでは範囲フィールドの後の部分が...

Python Django アプリケーションを Docker 化する方法

Docker は、開発者やシステム管理者がアプリケーションを軽量コンテナとして構築およびパッケージ化...

ネイティブ JavaScript 継承方法とその長所と短所の詳細な説明

目次序文プロトタイプ継承アドバンテージ欠点コンストラクタの継承アドバンテージ欠点組み合わせ継承寄生的...

docker-maven-pluginはイメージをパッケージ化し、プライベートウェアハウスにアップロードします。

目次1. docker-maven-pluginの紹介2. 環境とソフトウェアの準備3. デモ例3....

nginx+php-fpm サービスの HTTP ステータス コード 502 の詳細な分析

弊社の Web プロジェクトの 1 つでは、新しい都市の増加によりトラフィックと DB 負荷が増加し...

Vue はシームレスなカルーセル効果 (マーキー) を実現します

この記事では、シームレスなカルーセル効果を実現するためのVueの具体的なコードを例として紹介します。...

いくつかの面接の質問を使ってJavaScriptの実行メカニズムを調べる

目次前の単語同期と非同期前菜プレートを追加マクロタスク マイクロタスク約束しましょうタイマーを追加す...

要素テーブルの多層ネスト表示の実践

複数の注文を含むリストが必要です。各注文は一意にすることも、複数の注文を結合することもできます。各注...

Linux で ARM 開発ボード用のファイルシステムを作成する

1. Busyboxのソースコードをオンラインでダウンロードしてください。コンパイル方法については、...

CentOS 7 に MySQL 8 をインストールするための詳細なチュートリアル

準備するこの記事の環境情報: ソフトウェアバージョンセントOSセントOS7.4マイグレーション8.0...

MySQL 5.7 インストール MySQL サービスを開始できませんが、サービスはエラーを報告しません

MySQL 5.7 をインストールするには 2 つの方法があります。1 つはインストーラをダウンロー...

Explainキーワードに基づいてMySQLインデックス機能を最適化する方法

EXPLAIN は、MySQL がインデックスを使用して選択ステートメントを処理し、テーブルを結合す...