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 相关文章推荐
JavaScript下申明对象的几种方法小结
Oct 02 Javascript
解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法
Nov 14 Javascript
jQuery+.net实现浏览更多内容(改编php版本)
Mar 28 Javascript
javascript搜索框效果实现方法
May 14 Javascript
JavaScript中的substr()方法使用详解
Jun 06 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
Jan 05 Javascript
使用vue构建移动应用实战代码
Aug 02 Javascript
vue2.0+vue-dplayer实现hls播放的示例
Mar 02 Javascript
Node错误处理笔记之挖坑系列教程
Jun 05 Javascript
基于Vue实现平滑过渡的拖拽排序功能
Jun 12 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
Nov 06 Javascript
JQuery发送ajax请求时中文乱码问题解决
Nov 14 jQuery
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
解析link_mysql的php版
2013/06/30 PHP
PHP实现清除wordpress里恶意代码
2015/10/21 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
jquery里的each使用方法详解
2010/12/22 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
jquery实现标签上移、下移、置顶
2015/04/26 Javascript
jQuery与getJson结合的用法实例
2015/08/07 Javascript
基于Vue实现tab栏切换内容不断实时刷新数据功能
2017/04/13 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
vue项目中将element-ui table表格写成组件的实现代码
2019/06/12 Javascript
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python之PyUnit单元测试实例
2014/10/11 Python
python简单实例训练(21~30)
2017/11/15 Python
Python实现的摇骰子猜大小功能小游戏示例
2017/12/18 Python
python 与服务器的共享文件夹交互方法
2018/12/27 Python
关于python多重赋值的小问题
2019/04/17 Python
Python 图像对比度增强的几种方法(小结)
2019/09/25 Python
PyQt5中多线程模块QThread使用方法的实现
2020/01/31 Python
python numpy数组中的复制知识解析
2020/02/03 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
canvas 基础之图像处理的使用
2020/04/10 HTML / CSS
奥兰多迪士尼门票折扣:Undercover Tourist
2018/07/09 全球购物
世界上最大的艺术和工艺用品商店:MisterArt.com
2018/07/13 全球购物
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
给校长的建议书500字
2014/05/15 职场文书
专科应届毕业生求职信
2014/06/04 职场文书
会计学专业自荐信
2014/06/25 职场文书
亲子阅读的活动方案
2014/08/15 职场文书
2014领导干部四风问题查摆思想汇报
2014/09/13 职场文书
2015年数学教研工作总结
2015/07/22 职场文书
月考总结与反思
2015/10/22 职场文书
导游词之临安白水涧
2019/11/05 职场文书
一文搞懂MySQL索引页结构
2022/02/28 MySQL
Java由浅入深通关抽象类与接口(上篇)
2022/04/26 Java/Android
向Spring IOC 容器动态注册bean实现方式
2022/07/15 Java/Android