原生js实现数字字母混合验证码的简单实例


Posted in Javascript onDecember 10, 2015

本文实例讲述了原生js实现数字字母混合验证码的全部代码,重点是注释很详细,便于大家理解,特分享给大家供大家参考。具体如下:
运行效果截图如下:

原生js实现数字字母混合验证码的简单实例

具体代码如下:

<!DOCTYPE html>
<html>
<head>
  <meta charset="gb2312">
  <title></title>
  <style type="text/css">
    body, div {
      margin: 0;
      padding: 0;
      font-size: 18px;
      font-family: "微软雅黑";
      -webkit-user-selelct: none;
    }

    #code {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-top: -25px;
      margin-left: -50px;
      width: 100px;
      height: 50px;
      line-height: 50px;
      text-align: center;
      border: 1px solid #ff0000;
      cursor: pointer;
      letter-spacing: 5px;
    }
  </style>
</head>
<body>
<div id="code">
  xdF2
</div>
<script type="text/javascript">
  //当前验证码获取的随即范围
  var codeStr = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
  //思想:0-61索引 只需要随机生成4个索引,然后charAt可以获取随机4个索引。
  var oDiv = document.getElementById("code");

  function getRandom(n, m) {
    n = Number(n);       //转换n,m,结果不是数字就是NaN
    m = Number(m);
    if (isNaN(n) || isNaN(m)) {     //判断n,m,是不是有效数字,如果n或m其中一个传入的不是数字
      return Math.random();      //返回 【0-1)之间的随机小数
    }
    if (n > m) {             //如果n大于m,则交换位置
      var temp = n;
      n = m;
      m = temp;
    }
    return Math.round(Math.random() * (m - n) + n);          //返回,取m,n之间的随机整数。
  }


  function getCode() {       
    var str = "";


//定义一个空字符串备用
    for (var i = 0; i < 4; i++) {    //遍历4个索引
      var ran = getRandom(0, 61);      //调用getRandom方法,随机获取一个索引0-61里的随机索引
      str += codeStr.charAt(ran);      //把codeStr字符串里,我们指定获取ran(这个4个索引);
    }
    oDiv.innerHTML = str;       //呈现在页面上
  }

  getCode();              //调用方法
          
  oDiv.onclick = function () {
    getCode();
  }
</script>
</body>
</html>
Javascript 相关文章推荐
Extjs EditorGridPanel中ComboBox列的显示问题
Jul 04 Javascript
js形成页面的一种遮罩效果实例代码
Jan 04 Javascript
javascript如何判断输入的url是否正确
Apr 11 Javascript
在JavaScript中重写jQuery对象的方法实例教程
Aug 25 Javascript
javascript基础知识分享之类与函数化
Feb 13 Javascript
C#微信小程序服务端获取用户解密信息实例代码
Mar 10 Javascript
从parcel.js打包出错到选择nvm的全部过程
Jan 23 Javascript
select2 ajax 设置默认值,初始值的方法
Aug 09 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
Jul 20 Javascript
微信小程序实现文件预览
Oct 22 Javascript
vant组件中 dialog的确认按钮的回调事件操作
Nov 04 Javascript
前端JS获取URL参数的4种方法总结
Apr 05 Javascript
js实现新年倒计时效果
Dec 10 #Javascript
jquery判断复选框是否选中进行答题提示特效
Dec 10 #Javascript
jQuery实现选项卡切换效果简单演示
Dec 09 #Javascript
jquery特效 点击展示与隐藏全文
Dec 09 #Javascript
AngularJS实现表单手动验证和表单自动验证
Dec 09 #Javascript
js实现微信分享代码
Oct 11 #Javascript
JavaScript观察者模式(经典)
Dec 09 #Javascript
You might like
PHP4.04简明安装
2006/10/09 PHP
php session 检测和注销
2009/03/16 PHP
symfony表单与页面实现技巧
2015/01/26 PHP
详解php用curl调用接口方法,get和post两种方式
2017/01/13 PHP
PHP+ajax实现二级联动菜单功能示例
2018/08/10 PHP
Gambit vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
几个比较实用的JavaScript 测试及效验工具
2010/04/18 Javascript
转换json格式的日期为Javascript对象的函数
2010/07/13 Javascript
jquery 获取表单元素里面的值示例代码
2013/07/28 Javascript
jquery默认校验规则整理
2014/03/24 Javascript
jquery easyui 结合jsp简单展现table数据示例
2014/04/18 Javascript
JavaScript的作用域和块级作用域概念理解
2014/09/21 Javascript
Javascript基础知识盲点总结之函数
2016/05/15 Javascript
jQuery双向列表选择器select版
2016/11/01 Javascript
Jqprint实现页面打印
2017/01/06 Javascript
详解百度百科目录导航树小插件
2017/01/08 Javascript
浅谈angularjs $http提交数据探索
2017/01/20 Javascript
jQuery实现火车票买票城市选择切换功能
2017/09/15 jQuery
vue页面加载闪烁问题的解决方法
2018/03/28 Javascript
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
python 实时得到cpu和内存的使用情况方法
2018/06/11 Python
django基于cors解决跨域请求问题详解
2019/08/06 Python
django自带调试服务器的使用详解
2019/08/29 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
2020/02/13 Python
Python unittest discover批量执行代码实例
2020/09/08 Python
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
2020/11/17 HTML / CSS
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
初中女生自我鉴定
2013/12/19 职场文书
《黄河颂》教学反思
2014/02/07 职场文书
八项规定整改措施
2014/02/12 职场文书
周年庆促销方案
2014/03/15 职场文书
党校毕业心得体会
2014/09/13 职场文书
毕业横幅标语
2014/10/08 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
刘公岛导游词
2015/02/05 职场文书
漫画「狩龙人拉格纳」公开TV动画预告图
2022/03/22 日漫