Layuiはログインインターフェース検証コードを実装します

Layuiはログインインターフェース検証コードを実装します

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

効果画像:

html:

<div class="layui-form-item">
    <div class="layui-col-xs6">
      <input type="text" value="" placeholder="確認コードを入力してください(大文字と小文字は区別されません)" class="input-val"> 
      <キャンバスid="キャンバス" 幅="100" 高さ="30"></キャンバス>  
     </div>
      <div>
      <input type="button" value="ログイン" class="layui-btn layui-btn-fluid" lay-submit lay-filter="ログイン"> 
      </div>         
</div>

次はJSです:

var show_num=[];
  $(関数()
  {
   描画(表示番号)
   $("#canvas").on('クリック',function()
   {
  描画(表示番号)      
   })      
  });

次に、2 つの関数を呼び出します。

関数draw(show_num) {
            var canvas_width = $('#canvas').width();
            var canvas_height = $('#canvas').height();
            var canvas = document.getElementById("canvas"); // キャンバス オブジェクト (俳優) を取得します。 var context = canvas.getContext("2d"); // キャンバス描画環境 (俳優のパフォーマンス ステージ) を取得します。 canvas.width = canvas_width;
            キャンバスの高さ = キャンバスの高さ;
            var sCode = "A、B、C、E、F、G、H、J、K、L、M、N、P、Q、R、S、T、W、X、Y、Z、1、2、3、4、5、6、7、8、9、0";
            var aCode = sCode.split(",");
            var aLength = aCode.length; //配列の長さを取得します for (var i = 0; i <= 3; i++) {
                var j = Math.floor(Math.random() * aLength); //ランダムなインデックス値を取得します。 var deg = Math.random() * 30 * Math.PI / 180; //0から30の間のランダムなラジアンを生成します。 var txt = aCode[j]; //ランダムなコンテンツを取得します。 show_num[i] = txt.toLowerCase();
                var x = 10 + i * 20; //キャンバス上のテキストのx座標var y = 20 + Math.random() * 8; //キャンバス上のテキストのy座標context.font = "bold 23px Microsoft YaHei";

                コンテキストを翻訳します(x, y);
                コンテキストを回転します(度);

                context.fillStyle = ランダムカラー();
                コンテキスト.fillText(txt, 0, 0);

                コンテキストを回転します(-deg);
                コンテキストを翻訳します(-x, -y);
            }
            for (var i = 0; i <= 5; i++) { //検証コードに線を表示します context.strokeStyle = randomColor();
                コンテキスト.beginPath();
                コンテキストを移動します。(Math.random() * キャンバスの幅、Math.random() * キャンバスの高さ)
                context.lineTo(Math.random() * キャンバスの幅、Math.random() * キャンバスの高さ);
                コンテキスト.stroke();
            }
            for (var i = 0; i <= 30; i++) { //検証コードに小さなドットを表示します context.strokeStyle = randomColor();
                コンテキスト.beginPath();
                var x = Math.random() * キャンバス幅;
                var y = Math.random() * canvas_height;
                コンテキストを移動します(x, y);
                コンテキスト.lineTo(x + 1, y + 1);
                コンテキスト.stroke();
            }
        }

        function 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 + ")" を返します。
        }

スタイルはプロジェクトに応じて調整する必要があります。これが私のスタイルです:

<スタイル>
        .コード {
            幅: 100%;
            マージン: 0 自動;
        }
        .入力値 {
            幅: 63%;
            背景: #ffffff;
            高さ:2.8rem;
            パディング: 0 2%;
            境界線の半径: 5px;
            境界線: なし;
            境界線: 1px実線rgba(0,0,0,.2);
            フォントサイズ: 0.9rem;
        }
        #キャンバス {
            フロート: 右;
            表示: インラインブロック;
            境界線: 1px 実線 #ccc;
            境界線の半径: 5px;
            カーソル: ポインタ;
        }
</スタイル>

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

以下もご興味があるかもしれません:
  • layUIの検証コード機能と検証例

<<:  この記事ではSQL CASE WHENの使い方を詳しく説明します

>>:  Linuxの運用と保守、基本的なプロセス管理、リアルタイム監視と制御

推薦する

Linux で crontab を使用してスケジュールされたタスクを追加する方法

序文Linux システムはシステム サービス crond によって制御されます。 Linux システ...

JavaScript におけるシリアル操作と並列操作

目次1. はじめに2. es5メソッド3. 非同期関数のシリアル実行4. 非同期関数の並列実行5. ...

Vue3.0 は虫眼鏡効果のケーススタディを実装します

達成される効果は、固定ズームが 2 倍になり、マウスが左側の画像領域に入るとマスク レイヤーが表示さ...

MySQL を使用した分散ロックの実装

導入分散システムでは、分散ロックは最も基本的なツール クラスです。たとえば、支払い機能を備えた 2 ...

MySQLの文字セットを変更する方法

1. MySQLの文字セットを確認する '%char%' のような変数を表示します。...

JSで画面録画機能を作成する

OBS studioかっこいいですが、 JavaScriptもっとかっこいいです。では、 JavaS...

MySQL での外部キーの作成、制約、削除

序文MySQL バージョン 3.23.44 以降では、InnoDB エンジン タイプのテーブルは外部...

Node.jsはSTMPプロトコルとEWSプロトコルに基づいてメールを送信します

目次1 STMP プロトコルに基づいてメールを送信する Node.js メソッド2 MS Excha...

CSSボックスの表示/非表示とトップレイヤーの実装コード

.imgbox{ 幅: 1200ピクセル; 高さ: 612px; 右マージン: 自動; 左マージン...

Dockerfile 内の予約語命令の解析処理

目次1. Dockerfile とは何ですか? 2. Dockerfile構築プロセスの分析3. D...

CSS3 における構造擬似クラスセレクターと擬似要素セレクターの使い方の詳細な説明

構造擬似クラスセレクタの紹介構造擬似クラスセレクターは、いくつかの特殊効果を処理するために使用されま...

エンコードが utf-8 に設定されている場合に Web ページが文字化けする問題の解決策

最近、PHP で Web ページを書いているときに、エンコードを UTF-8 に設定しました。しかし...

LinuxカーネルとSVNバージョン間の競合の解決策

現象システムは Linux システムカーネルを正常にコンパイルできましたが、SVN をインストールし...