フロントエンドページのスライド検証を実装するための JavaScript + HTML

フロントエンドページのスライド検証を実装するための JavaScript + HTML

この記事では、フロントエンドページのスライド検証を実装するためのJavaScript + HTMLの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

クールなフロントエンドページのスライド検証を共有する

コードに直接

<%@ ページ contentType="text/html;charset=UTF-8" language="java" %>
<html>
<ヘッド>
    <title>タイトル</title>
    <!--jQuery の js を導入する -->
    <script type="text/javascript" src="../jquery/jquery.js"></script>
</head>
<スタイル>
    .入力値 {
        幅: 200ピクセル;
        高さ: 32px;
        境界線: 1px 実線 #ddd;
        ボックスのサイズ: 境界線ボックス;
    }
    #キャンバス {
        垂直位置合わせ: 中央;
        ボックスのサイズ: 境界線ボックス;
        境界線: 1px 実線 #ddd;
        カーソル: ポインタ;
    }
    .btn{
        表示: ブロック;
        上マージン: 20px;
        高さ: 32px;
        幅: 100ピクセル;
        フォントサイズ: 16px;
        色: #fff;
        背景色: #457adb;
        境界線: なし;
        境界線の半径: 50px;
    }
</スタイル>
<本文>
<div class="code">
    <input type="text" value="" placeholder="確認コードを入力してください(大文字と小文字は区別されません)" class="input-val">
    <キャンバスid="キャンバス" 幅="100" 高さ="30"></キャンバス>
    <button class="btn">送信</button>
</div>
</本文>
<スクリプト>
    $(関数(){
        var show_num = [];
        描画(表示番号)

        $("#canvas").on('click',function(){
            描画(表示番号)
        })
        $(".btn").on('クリック',function(){
            var val = $(".input-val").val().toLowerCase();
            var num = show_num.join("");
            if(val==''){
                alert('認証コードを入力してください!');
            }それ以外の場合(val == num){
                alert('送信に成功しました!');
                $(".input-val").val('');
                // 描画(show_num);

            }それ以外{
                alert('認証コードが間違っています! 再入力してください!');
                $(".input-val").val('');
                // 描画(show_num);
            }
        })
    })

    //検証コードのグラフィックを生成してレンダリングする function 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、d、e、f、g、h、i、j、k、m、n、p、q、r、s、t、u、v、w、x、y、z、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 < 4; i++) { //ここでの for ループは検証コードの桁数を制御できます (6 桁を表示する場合は、4 を 6 に変更するだけです)
            var j = Math.floor(Math.random() * aLength); //ランダムなインデックス値を取得します // var deg = Math.random() * 30 * Math.PI / 180; //0から30の間のランダムなラジアンを生成します var deg = Math.random() - 0.5; //ランダムなラジアンを生成します 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);
            コンテキスト.s202166112952045troke();
        }
    }

    //ランダムな色の値を取得する 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 + ")" を返します。
    }

</スクリプト>
</html>

効果は以下のとおりです

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

以下もご興味があるかもしれません:
  • Vue-scroller ページ入力ボックスを使用してもスライドがトリガーされない問題と解決策
  • Vueはbetter-scrollに基づいて左右のリンクスライドページを実装します
  • Vue はページ切り替えスライド効果を実装します
  • 指を使って Vue ルーティング ページ間をスライドする方法
  • Vueをベースにページ切り替えの左右スライド効果を実装する
  • フロントエンドページのスライド検証を実装するための JavaScript + HTML (2)
  • JavaScriptはスクロールバーの位置を取得し、ページをアンカーポイントまでスライドします。
  • jsを使用してページの下部にスライドし、より多くの機能を自動的に読み込む
  • js/jquery コントロール ページ 動的読み込み データ スライディング スクロール バー 自動読み込み イベント メソッド
  • Vue/jsで自動ページスライドアップ効果を実現

<<:  MySQL 8.0.13 で日付を 0000-00-00 00:00:00 に設定すると発生する問題を解決する

>>:  圧縮パッケージを使用して Linux 環境に JDK 13 をインストールする方法

推薦する

pdf.js を使用して Vue で PDF ファイルをプレビューする方法

ページ上で PDF をプレビューすると、一部のファイルは印刷またはダウンロードできません。現時点では...

Centos7にnginxをインストールする方法

必要な環境をインストールする1. gccのインストールnginx をインストールするには、公式サイト...

Linuxターミナルでの一般的なMySQL操作コマンドの詳細な説明

仕える: # chkconfig --list すべてのシステム サービスを一覧表示します # ch...

HTML にネストされた div の無効なマージンに対する解決策

div がネストされているときに margin が機能しない問題の解決策を次に示します。さて、マージ...

CentOS 6.5 i386 インストール MySQL 5.7.18 詳細チュートリアル

ほとんどの人はMySQLをコンパイルしてシステムディレクトリに置きますが、私のやり方はコンパイルした...

Linux で複数の mysql5.7.19 (tar.gz) ファイルをインストールする方法

LinuxでのMySQL-5.7.19バージョンの初心者向けの最初のインストールについては、前の記事...

MySQL Innodbの主な機能挿入バッファ

目次挿入バッファとは何ですか?挿入バッファのトリガー条件は何ですか?なぜ一意のインデックスにできない...

高い同時実行性の下でNginxのパフォーマンスを最適化する方法をまとめます

目次特徴利点インストールとコマンド設定ファイルプロキシモードとリバースプロキシ構成フォワードプロキシ...

エージェントを介したzabbix監視プロセスとポートの詳細なプロセス

環境の紹介オペレーティングシステム: Centos 7.4 Zabbix バージョン: zabbix...

nginx rewriteを使用してURLをリダイレクトする方法

最近仕事でnginxの設定を変更する必要が頻繁にあり、nginxでrewriteを使用する方法を学び...

Vue イベントの $event パラメータ = イベント値の場合

テンプレート <el-table :data="データリスト"> &...

Vue3+Vantコンポーネントを使用してアプリの検索履歴機能を実装する(サンプルコード)

現在、新しいアプリプロジェクトを開発中です。私にとっても初めてのアプリ開発です。チームで調査と検討を...

Vueはメニューナビゲーションを実装するためにelement-uiを使用します

この記事では、Element-uiを使用してメニューナビゲーションを実装するVueの具体的なコードを...

vite2.0 設定学習の詳しい説明(typescript 版)

導入悠宇希の原文です。 vite は Vue CLI に似ています。vite も、基本的なプロジェク...

MySQL 5.6.37 (zip) ダウンロード インストール 構成 グラフィック チュートリアル

この記事では、MySQL 5.6.37のダウンロード、インストール、設定のチュートリアルを参考までに...