原生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 相关文章推荐
JQUERY获取form表单值的代码
Jul 17 Javascript
JQuery1.4+ Ajax IE8 内存泄漏问题
Oct 15 Javascript
JS 按钮点击触发(兼容IE、火狐)
Aug 07 Javascript
JavaScript prototype 使用介绍
Aug 29 Javascript
原生javascript实现图片滚动、延时加载功能
Jan 12 Javascript
Jquery日期选择datepicker插件用法实例分析
Jun 08 Javascript
Bootstrap基础学习
Jun 16 Javascript
JCrop+ajaxUpload 图像切割上传的实例代码
Jul 20 Javascript
js 判断数据类型的几种方法
Jan 13 Javascript
jquery.cookie.js的介绍与使用方法
Feb 09 Javascript
浅谈关于axios和session的一些事
Jul 13 Javascript
JS 实现分页打印功能
May 16 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
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
2013/02/14 PHP
php过滤所有恶意字符(批量过滤post,get敏感数据)
2014/03/18 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
用jscript实现列出安装的软件列表
2007/06/18 Javascript
JavaScript 字符串与数组转换函数[不用split与join]
2009/12/13 Javascript
js实现页面打印功能实例代码(附去页眉页脚功能代码)
2009/12/15 Javascript
js控制div及网页相关属性的代码
2009/12/19 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
jQuery中.live()方法的用法深入解析
2013/12/30 Javascript
node.js中的fs.utimesSync方法使用说明
2014/12/15 Javascript
Jquery全屏相册插件zoomvisualizer具有调节放大与缩小功能
2015/11/02 Javascript
学习使用bootstrap基本控件(table、form、button)
2016/04/12 Javascript
js变量提升深入理解
2016/09/16 Javascript
JS数字千分位格式化实现方法总结
2016/12/16 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
JS实现二维数组横纵列转置的方法
2018/04/17 Javascript
Vue的el-scrollbar实现自定义滚动
2018/05/29 Python
Python 类的特殊成员解析
2018/06/20 Python
使用Python横向合并excel文件的实例
2018/12/11 Python
python try 异常处理(史上最全)
2019/03/07 Python
python3读取图片并灰度化图片的四种方法(OpenCV、PIL.Image、TensorFlow方法)总结
2019/07/04 Python
python3.7实现云之讯、聚合短信平台的短信发送功能
2019/09/26 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
keras的backend 设置 tensorflow,theano操作
2020/06/30 Python
python线性插值解析
2020/07/05 Python
.NET初级开发工程师面试题(包括Javascript)
2012/08/22 面试题
业务经理的岗位职责
2013/11/16 职场文书
测试工程师职业规划书
2014/02/06 职场文书
天猫某品牌专卖店运营计划书
2014/03/21 职场文书
2014年监理工作总结范文
2014/11/17 职场文书
公司人事任命通知
2015/04/20 职场文书
生产设备维护保养制度
2015/08/06 职场文书
导游词之北京明十三陵
2019/10/28 职场文书
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript
Python集合的基础操作
2021/11/01 Python
使用Oracle命令进行数据库备份与还原
2021/12/06 Oracle