qinyi素材网
当前位置: 首页 > jQuery素材 > jQuery canvas验证码
  时间: 2021-10-22   阅读:2.66k

插件介绍

简单的图片验证小案例,每次点击图片更新新的验证码,提交的时候会校验验证码与图片canvas进行判断是否相同,并且不区分大小写。

简要教程

简单的图片验证小案例,每次点击图片更新新的验证码,提交的时候会校验验证码与图片canvas进行判断是否相同,并且不区分大小写。

使用方法

在HTML中引入主要的js

<script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script>
<script src="js/code.js"></script>

HTML结构

<div class="code">
    <input type="text" value="" placeholder="请输入验证码(不区分大小写)" class="input-val" />
    <canvas id="canvas" width="100" height="43"></canvas>
    <button class="btn">提交</button>
</div>

CSS样式

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html {
            width: 100%;
            height: 100%;
            font-size: 16px;
        }

        body {
            width: 100%;
            height: 100%;
            -moz-user-select: none;
            /*火狐*/
            /*禁止用户在页面选择文字*/
            -webkit-user-select: none;
            /*webkit浏览器*/
            -ms-user-select: none;
            /*IE10*/
            -khtml-user-select: none;
            /*早期浏览器*/
            user-select: none;
        }

        .code {
            padding-top: 50px;
            width: 400px;
            margin: 0 auto;
        }

        .input-val {
            width: 295px;
            background: #ffffff;
            height: 2.8rem;
            padding: 0 2%;
            border-radius: 5px;
            border: none;
            border: 1px solid rgba(0, 0, 0, .2);
            font-size: 1.0625rem;
        }

        #canvas {
            float: right;
            display: inline-block;
            border: 1px solid #ccc;
            border-radius: 5px;
            cursor: pointer;
        }

        .btn {
            width: 100px;
            height: 40px;
            background: #f1f1f1;
            border: 1px solid #ccc;
            border-radius: 5px;
            margin: 20px auto 0;
            display: block;
            font-size: 1.2rem;
            color: #e22e1c;
            cursor: pointer;
        }

额外的JavaScript代码

    $(function() {
        code_draw();
        // 点击后刷新验证码
        $("#canvas").on('click', function() {
            code_draw();
        })

        $(".btn").on('click', function() {
            // 将输入的内容转为大写,可通过这步进行大小写验证
            var val = $(".input-val").val().toLowerCase();
            // 获取生成验证码值
            var num = $('#canvas').attr('data-code');
            if (val == '') {
                alert('请输入验证码!');
            } else if (val == num) {
                alert('提交成功!');
                $(".input-val").val('');
                draw(show_num);

            } else {
                alert('验证码错误!请重新输入!');
                $(".input-val").val('');
                draw(show_num);
            }
        })
    })
上一篇: 下一篇: