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 相关文章推荐
js返回上一页并刷新代码整理
Dec 21 Javascript
『jQuery』名称冲突使用noConflict方法解决
Apr 22 Javascript
给应用部分的js代码设定一个统一的入口
Jun 15 Javascript
JavaScript中的Math.LN2属性用法详解
Jun 12 Javascript
AngularJS的表单使用详解
Jun 17 Javascript
jQuery实现按钮的点击 全选/反选 单选框/复选框 文本框 表单验证
Jun 25 Javascript
JavaScript html5 canvas绘制时钟效果
Mar 01 Javascript
基于Bootstrap的UI扩展 StyleBootstrap
Jun 17 Javascript
js与jQuery实现的用户注册协议倒计时功能实例【三种方法】
Nov 09 jQuery
微信小程序实现图片上传功能实例(前端+PHP后端)
Jan 10 Javascript
详解小程序云开发攻略(解决最棘手的问题)
Sep 30 Javascript
node爬取新型冠状病毒的疫情实时动态
Feb 06 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中Object对象的笔记分享
2011/06/28 PHP
PHPer 需要了解的 5 个 Composer 小技巧
2014/08/18 PHP
ecshop适应在PHP7的修改方法解决报错的实现
2016/11/01 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
javascript中获取选中对象的类型
2007/04/02 Javascript
JS 文件大小判断的实现代码
2010/04/07 Javascript
JavaScript 操作table,可以新增行和列并且隔一行换背景色代码分享
2013/07/05 Javascript
Javascript连接多个数组不用concat来解决
2014/03/24 Javascript
node.js中的fs.fchmod方法使用说明
2014/12/16 Javascript
js与jquery回车提交的方法
2015/02/03 Javascript
简介JavaScript中的italics()方法的使用
2015/06/08 Javascript
Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗
2016/06/30 Javascript
JS前向后瞻正则表达式定义与用法示例
2016/12/27 Javascript
详解使用Vue.Js结合Jquery Ajax加载数据的两种方式
2017/01/10 Javascript
jQuery plugin animsition使用小结
2017/09/14 jQuery
JavaScript中的一些隐式转换和总结(推荐)
2017/12/22 Javascript
JavaScript基础心法 深浅拷贝(浅拷贝和深拷贝)
2018/03/05 Javascript
layer弹出层显示在top顶层的方法
2019/09/11 Javascript
Vue搭建后台系统需要注意的问题
2019/11/08 Javascript
Python 正则表达式(转义问题)
2014/12/15 Python
在python中bool函数的取值方法
2018/11/01 Python
dataframe 按条件替换某一列中的值方法
2019/01/29 Python
python按比例随机切分数据的实现
2019/07/11 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
python 日志 logging模块详细解析
2020/03/31 Python
python 还原梯度下降算法实现一维线性回归
2020/10/22 Python
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
四年的大学生生活自我评价
2013/12/09 职场文书
车贷收入证明范本
2014/01/09 职场文书
上课迟到检讨书100字
2014/01/11 职场文书
文秘专业应届生求职信
2014/05/26 职场文书
大学毕业论文致谢词
2015/05/14 职场文书
2016年教代会开幕词
2016/03/04 职场文书
Vue和Flask通信的实现
2021/05/19 Vue.js
JMeter对MySQL数据库进行压力测试的实现步骤
2022/01/22 MySQL