JavaScript实现简单验证码


Posted in Javascript onAugust 24, 2020

JavaScript实现简单验证码,供大家参考,具体内容如下

验证流程图

JavaScript实现简单验证码

HTML部分

```javascript
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<style>
  .code {
    font-family: Arial;
    font-style: italic;
    color: blue;
    font-size: 26px;
    border: 0;
    padding: 0.2px 1.2px;
    letter-spacing: 4px;
    font-weight: bolder;
    float: left;
    cursor: pointer;
    width: 120px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    vertical-align: middle;
    background-color: #d8b7e3;
  }

  span {
    text-decoration: none;
    font-size: 12px;
    color: #288bc4;
    padding-left: 10px;
    /* color: #4c9b7675; */
  }

  span:hover {
    text-decoration: underline;
    cursor: pointer;
    /* color: rgb(rgb(221, 84, 84), green, blue); */
    /* color: rgb(rgb(160, 207, 209), green, blue); */
  }
</style>

<body>
  <div>
    <table border="0" cellspacing="5" cellpadding="5">
      <tr>
        <td>
          <div id="checkCode" class="code" onclick="createCode(4)">543</div>
        </td>
        <td> <span onclick="createCode(4)">看不清换一张</span></td>
      </tr>
      <tr>
        <td>验证码:</td>
        <td><input type="text" id="inputCode" style="float:left;" /></td>
      </tr>
      <tr>
        <td></td>
        <td><input type="button" onclick="validateCode()" value="确定" /></td>
      </tr>
    </table>
</div>

JavaScript部分

window.onload = function () {
      createCode(4);
    }


    // 创建验证码
    function createCode(len) {
      // 
      var code = '';
      var codeLength = parseInt(len); //验证码的长度
      var checkCode = document.getElementById('checkCode'); //获取画布
      // 设置验证码
      var codeArray = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'z', 'x', 'c', 'v', 'b', 'n', 'm', 'l', 'k', 'j', 'h', 'g', 'f', 'd', 's', 'a', 'p', 'o', 'i', 'u', 'y', 't', 'r', 'r', 'e', 'w', 'q', "Z", 'X', 'C', "V", "B", "N", "M", "A", "S", "D", "F", "G", "H", "J", "L", "K", "P", "O", "I", "U", "Y", "T", "R", "E", "W", "Q")

      //设置验证码颜色
      // var num= Math.floor(Math.random() * 8)
      var color = '#';
      var bgcolor = '#';
      var fontcolor = new Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f');

      // 循环数组,随机获取
      for (var i = 0; i < codeLength; i++) {
        //获取数组下标
        var charNum = Math.floor(Math.random() * 62);
        // 存储数组
        code = code + codeArray[charNum];
      }
      if (checkCode && code.length == codeLength) {
        checkCode.innerHTML = code;
      }

      // 设置验证码颜色
      for (var i = 0; i < 6; i++) {
        var colorNum = Math.floor(Math.random() * 15);
        color += fontcolor[colorNum];
      }
      console.log(color)
      checkCode.style.color = color;
      
      // 设置画布背景颜色
      for (var i = 0; i < 6; i++) {
        var colorNum = Math.floor(Math.random() * 15);
        bgcolor += fontcolor[colorNum];
      }
      checkCode.style.backgroundColor = bgcolor;

    }

    // 检验验证码是否正确
    function validateCode() {
      // 获取画布的验证码
      var checkCode = document.getElementById("checkCode").innerHTML;
      // 获取用户输入的验证码,并且去掉空格
      var inputCode = document.getElementById('inputCode').value.trim();

      console.log(checkCode)
      console.log(inputCode)

      // 判断是否相等
      if (inputCode.length < 4) {
        alert('验证码长度为四位');
        createCode(4);
      } else if (checkCode.toLocaleLowerCase() != inputCode.toLocaleLowerCase()) {
        alert('输入验证码不正确!');
        createCode(4);
      } else {
        alert('正确')
      }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery SELECT单选模拟jQuery.select.js
Nov 12 Javascript
jquery 简单图片导航插件jquery.imgNav.js
Mar 17 Javascript
javascript下对于事件、事件流、事件触发的顺序随便说说
Jul 17 Javascript
JavaScript高级程序设计 读书笔记之九 本地对象Array
Feb 27 Javascript
JS对img进行操作(换图片/切图/轮换/停止)
Apr 17 Javascript
JS和函数式语言的三特性
Mar 05 Javascript
Javascript获取数组中的最大值和最小值的方法汇总
Jan 01 Javascript
论JavaScript模块化编程
Mar 07 Javascript
最棒的Angular2表格控件
Aug 10 Javascript
在vue中使用Autoprefixed的方法
Jul 27 Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
Sep 03 Javascript
JS实现前端路由功能示例【原生路由】
May 29 Javascript
JavaScript经典案例之简易计算器
Aug 24 #Javascript
原生js实现拖拽移动与缩放效果
Aug 24 #Javascript
JavaScript实现拖拽和缩放效果
Aug 24 #Javascript
Jquery 获取相同NAME 或者id删除行操作
Aug 24 #jQuery
JavaScript实现矩形块大小任意缩放
Aug 25 #Javascript
VSCode插件安装完成后的配置(常用配置)
Aug 24 #Javascript
JS实现按比例缩小图片宽高
Aug 24 #Javascript
You might like
PHP高级对象构建 工厂模式的使用
2012/02/05 PHP
浅析PHP递归函数返回值使用方法
2013/02/18 PHP
php安装swoole扩展的方法
2015/03/19 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
php微信开发之关键词回复功能
2018/06/13 PHP
情人节之礼 js项链效果
2012/02/13 Javascript
jQuery实现的数值范围range2dslider选取插件特效多款代码分享
2015/08/27 Javascript
jQuery实现图片预加载效果
2015/11/27 Javascript
JavaScript中使用数组方法汇总
2016/02/16 Javascript
无缝滚动的简单实现代码(推荐)
2016/06/07 Javascript
JS常用加密编码与算法实例总结
2016/12/22 Javascript
vuejs通过filterBy、orderBy实现搜索筛选、降序排序数据
2020/10/26 Javascript
Vue.2.0.5过渡效果使用技巧
2017/03/16 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
使用jQuery实现简单的tab框实例
2017/08/22 jQuery
Python自动扫雷实现方法
2015/07/25 Python
python实现汉诺塔递归算法经典案例
2021/03/01 Python
Python编程实现两个文件夹里文件的对比功能示例【包含内容的对比】
2017/06/20 Python
浅谈Python peewee 使用经验
2017/10/20 Python
对numpy中二进制格式的数据存储与读取方法详解
2018/11/01 Python
Django框架设置cookies与获取cookies操作详解
2019/05/27 Python
pytorch: Parameter 的数据结构实例
2019/12/31 Python
jupyter notebook 添加kernel permission denied的操作
2020/04/21 Python
H&M美国官网:欧洲最大的服饰零售商
2016/09/07 全球购物
文秘专业个人求职信
2013/12/22 职场文书
校本教研工作制度
2014/01/22 职场文书
小学生安全保证书
2014/02/01 职场文书
实习会计求职自荐信范文
2014/03/10 职场文书
公司业务员岗位职责
2014/03/18 职场文书
2014高考励志标语
2014/06/05 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
单位租车协议书
2015/01/29 职场文书
宿舍卫生管理制度
2015/08/05 职场文书
《跨越海峡的生命桥》教学反思
2016/02/18 职场文书
Element实现动态表格的示例代码
2021/08/02 Javascript
Redis批量生成数据的实现
2022/06/05 Redis