通过Math.random()生成0~1的随机数,toString(36)将生成的随机数转换为36进制,因为36进制会包含所有的小数和小写字母,substr(3,5)截取字符串,从第3位起往后取5位。前两位是0,所以只从第3位起。具体详情如下:

html部分

<div class="main"><div class="yzbjt"></div><div class="updataYzm">点击图片,更换验证码</div><div style="clear: both;"></div><input type="text" placeholder="请输入验证码" maxlength="5" class="yzinp"><button class="yzBtn">验证</button><div class="yzMsg"></div>
</div>

JavaScript部分

//   获取元素var yzbjt = document.querySelector('.yzbjt');var yzinp = document.querySelector('.yzinp');var yzBtn = document.querySelector('.yzBtn');var yzMsg = document.querySelector('.yzMsg')var updataYzm = document.querySelector('.updataYzm')updataYzm.onclick = function() {yzbjt.innerHTML = getCode();}// 生成验证码函数,生成五位随机数字或小写字母var getCode = function() {//   Math.random()生成0~1的随机数,小数位在16或17位//  toString(36)转换为36进制,因为36进制会包含所有的小数和小写字母//    substr(3,5)截取字符串,从第3位起往后取5位。前两位是0,所以只从第3位起var code = Math.random().toString(36).substr(3, 5);//  返回验证码return code;}yzinp.addEventListener('keyup',function(event) {event.preventDefault()if(event.keyCode === 13) {yzBtn.click();}})yzBtn.onclick = function() {if(yzbjt.innerHTML == yzinp.value) {yzMsg.innerHTML = '验证码正确'}else{yzMsg.innerHTML = '请输入正确的验证码'}}//   点击验证码更换验证码yzbjt.onclick = function() {yzbjt.innerHTML = getCode();}// 网页载入的时候就出现验证码yzbjt.click();

style样式部分

.main {max-width: 1200px;height: 300px;margin: 0 auto;}.yzbjt {width: 100%;height: 50px;background-image: url('https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg2020.cnblogs.com%2Fblog%2F1967562%2F202003%2F1967562-20200313212309072-728974878.jpg&refer=http%3A%2F%2Fimg2020.cnblogs.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1672973655&t=502b34b182eca0c0b40e9f953e092cea');font-size: 28px;font-style: italic;/* 字体斜体 */letter-spacing: 10px;/* 字体间距 */cursor: pointer;/* 鼠标放入变小手 */text-align: center;line-height: 50px;user-select: none;}.updataYzm {color: blue;font-size: 12px;float: right;margin: 10px 0;}.yzinp {width: 100%;height: 40px;margin: 10px 0;box-sizing: border-box;/* 去掉内边距和边框对盒子的影响 */}.yzBtn {width: 100%;height: 40px;}

JavaScript生成验证码相关推荐

  1. 使用Javascript生成验证码

    验证码作用:验证你是否是机器人 1.简单的验证码:6位纯数字组成的验证码(非常容易破解) 代码如下: function numTestCode(n){​ var arr = []; //存储生成的数字 ...

  2. JavaScript 生成随机验证码

    JavaScript 生成随机验证码 文章目录 JavaScript 生成随机验证码 Math对象下 random方法

  3. html5 cs js字母验证码,JavaScript生成图形验证码

    本文实例为大家分享了js生成图形验证码的具体代码,供大家参考,具体内容如下 getGVerify:function (id) { function GVerify(options) { //创建一个图 ...

  4. JavaScript生成图形验证码

    getGVerify:function (id){function GVerify(options) { //创建一个图形验证码对象,接收options对象为参数this.options = { // ...

  5. 使用kaptcha生成验证码

    2019独角兽企业重金招聘Python工程师标准>>> kaptcha是一个简单好用的验证码生成工具,通过配置,可以自己定义验证码大小.颜色.显示的字符等等.下面就来讲一下如何使用k ...

  6. 生成验证码点击可刷新

    我把生成验证码与生成验证码图片封装成一个静态方法,放到ValidateCode类里 /// <summary> /// 生成验证码的类 /// </summary> publi ...

  7. Java Web学习总结(22)——使用kaptcha生成验证码

    kaptcha是一个简单好用的验证码生成工具,通过配置,可以自己定义验证码大小.颜色.显示的字符等等.下面就来讲一下如何使用kaptcha生成验证码以及在服务器端取出验证码进行校验. 一.搭建测试环境 ...

  8. 转: 通过Servlet生成验证码图片

    孤傲苍狼 只为成功找方法,不为失败找借口! javaweb学习总结(九)-- 通过Servlet生成验证码图片 一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedIma ...

  9. artdialog 异步加载页面 生成验证码

    artdialog  异步加载一个页面 需求:例如现在好多网站的登录或注册 都是点击弹出一个层出来 然后在上面登录.注册 这个登录可能在网站的每个页面都会有,但是我们又不能在每个页面都这一段html加 ...

最新文章

  1. 站覆盖范围_你了解无线覆盖范围和穿墙能力吗?别再走进这些误区了
  2. mysql中怎样扑抓到是那个字段出错_mysql 常见的几个错误问题
  3. 深入理解Spark 2.1 Core (十一):Shuffle Reduce 端的原理与源码分析
  4. mysql 远程连接取消权限_MYSQL远程登录权限设置
  5. CSS3中的圆角边框属性详解(border-radius属性)
  6. Redis高级项目实战!北京java编程入门培训
  7. leetcode 125 valid-palindrome
  8. matlab s函数z变换,Matlab符号计算——s函数转z函数
  9. 黑群晖DSM7.1.0物理机安装教程
  10. 菜狗为了打败菜猫,学了一套如来十三掌
  11. svn: E155004: There are unfinished work items in ‘D:\workspace\xxx‘; run ‘svn cleanup‘ firs
  12. ios 唤醒小键盘 如何使得小键盘上出现 “前往”、“搜索”、“”等按钮
  13. 从淘宝服务器IP地址服务获取IP地址信息的方法
  14. 「网络安全」安全设备篇(3)——IPS
  15. 51单片机基础之继电器
  16. python作为最热门的编程语言你知道多少?
  17. keras实现双通道模型
  18. 【软件测试】测试点总结,收取短信验证码的测试(详全),你的即用宝典......
  19. hexo静态网站部署到腾讯云cos
  20. 关于解决win7远程桌面已停止工作错误

热门文章

  1. 张一鸣,究竟有多可怕?身家千亿,不爱豪车美女,就喜欢做产品!
  2. 爬虫爬取小说《动物农场》全部章节内容
  3. 学习matlab(十六)——工具箱(神经网络)
  4. Low-cost Sensor-enabled Freehand 3D Ultrasound
  5. Android cec设备,Android 9 CEC架构
  6. 和口袋购物王珂聊移动电商的未来
  7. 技术:双电脑共享鼠标、键盘解决方案 | USB对拷线、Synergy
  8. 《Blender建模练习:人物模型多边形建模》
  9. [Linux]什么是Linux根社区
  10. 麻省理工学院教授认为区块链可以引领无国界经济