function randomCode(){
function rand(){
var str="abcdefghijklmnopqrstuvwxyz0123456789";
var arr=str.split("");
var validate="";
var ranNum;
for(var i=0;i<4;i++){
ranNum=Math.floor(Math.random()*36); //随机数在[0,35]之间
validate+=arr[ranNum];
}
return validate;
}

/*干扰线的随机x坐标值*/
function lineX(){
var ranLineX=Math.floor(Math.random()*90);
return ranLineX;
}

/*干扰线的随机y坐标值*/
function lineY(){
var ranLineY=Math.floor(Math.random()*40);
return ranLineY;
}

function clickChange(){
var mycanvas=document.getElementById('mycanvas');
var cxt=mycanvas.getContext('2d');
cxt.fillStyle='#000';
cxt.fillRect(0,0,90,40);

/*生成干扰线20条*/
for(var j=0;j<20;j++){
cxt.strokeStyle='#fff';
cxt.beginPath(); //若省略beginPath,则每点击一次验证码会累积干扰线的条数
cxt.moveTo(lineX(),lineY());
cxt.lineTo(lineX(),lineY());
cxt.lineWidth=0.5;
cxt.closePath();
cxt.stroke();
}
cxt.fillStyle='red';
cxt.font='bold 20px Arial';
cxt.fillText(rand(),25,25); //把rand()生成的随机数文本填充到canvas中
}
clickChange();
/*点击验证码更换*/
var mycanvas=document.querySelector('canvas');
mycanvas.οnclick=function(e){
e.preventDefault(); //阻止鼠标点击发生默认的行为
clickChange();
};

}

转载于:https://www.cnblogs.com/supreme-H/p/7392538.html

相关登录随机验证码公共函数相关推荐

  1. 登录之验证码相关实现

    一,登录页面为什么要有验证码? 防止用户恶意的频繁向后端发送请求,使得服务端的压力大增,避免不必要的请求压力. 以Django为例,关于图片验证码和滑动验证码的实现 二.图片验证码的实现 路由部分 u ...

  2. 前端案例:简易登录表单的制作,包括用户名、密码、随机验证码(代码完整,复制即用)

    案例效果 本案例基于 vue.js 和  Element UI 实现.随机验证码采用 DOM 操作和 canvas 绘制,可随机生成和刷新:后续程序逻辑直接填入方法即可. Element UI 下载安 ...

  3. python-Day5-深入正则表达式--冒泡排序-时间复杂度 --常用模块学习:自定义模块--random模块:随机验证码--time datetime模块...

    正则表达式 语法: mport re #导入模块名 p= re.compile("^[0-9]") #生成要匹配的正则对象 , ^代表从开头匹配,[0-9]代表匹配0至9的任意一个 ...

  4. php登录调用验证码,PHP编写登录验证码功能 附调用方法

    本文实例为大家分享了一个PHP写的登录验证码功能,供大家参考,具体内容如下 ShowKey.php<?php session_start(); //设置COOKIE或Session functi ...

  5. 用ajax写验证码随机数,JavaScript随机验证码

    利用canvas制作一个随机验证码: 1.clearRect:context.clearRect(x,y,width,height);清空给定矩形内的指定像素 2.fillStyle:设置画笔的颜色 ...

  6. python编程实战(二):一文教你生成随机验证码!大小写字母与数字组合,位数可以控制

    随机验证码的生成 前言 正文 实现 代码 效果 前言 验证码验证,是常见的安全验证的一种方式,可以用来杜绝脚本和机器人操作等等: 除了本文介绍的简单的验证码之外,还有拼图验证.文字顺序验证等常见的验证 ...

  7. .NET Core实战项目之CMS 第十六章 用户登录及验证码功能实现

    前面为了方便我们只是简单实现了基本业务功能的增删改查,但是登录功能还没有实现,而登录又是系统所必须的,得益于 ASP.NET Core的可扩展性因此我们很容易实现我们的登录功能.今天我将带着大家一起来 ...

  8. python随机生成验证码_Python生成随机验证码

    #生成随机验证码 from PIL importImagefrom io importBytesIOfrom PIL importImageDraw,ImageFontdefcheck_code(re ...

  9. 大乐透python预测程序_Python生成随机验证码,大乐透号码

    随机生成验证码 示例代码: import random # 导入标准模块中的random if __name__ == '__main__': check_code = "" # ...

最新文章

  1. SQL Server2008及以上 表分区操作详解
  2. 送你一份 Kubernetes 实用命令速查表
  3. WPF模板(二)应用
  4. 成功解决ValueError: Shape of passed values is (1, 332), indices imply (1, 1)
  5. 对Python匿名函数和@property小小理解,希望对你学习也有帮助
  6. 两个Fragment之间如何传递数据
  7. Android APP终极瘦身指南
  8. android自动化测试工具之monkey
  9. C/C++查找一定范围内的素数(筛法)
  10. javascript单元测试
  11. Competitive Programming专题题解(1)
  12. python django ajax 逻辑推理_python django初识ajax
  13. 获取datagrid中编辑列combobox的value值与text值
  14. Vscode搭建jdk源码阅读环境 wsl
  15. (附源码)ssm小米购物网站 毕业设计 261624
  16. 最大子段和三种算法实现
  17. mysql常见练习题45题
  18. ZZULIOJ1013
  19. [转]myip.cn-电影格式转换器www.sifangvideo.com
  20. 对不起,我们公司不招35岁的人

热门文章

  1. 【DRP】【SQL】-悲观锁-防止多用户同时操作时出现脏数据
  2. MSSQL差异备份拿shell(转)
  3. VC++2012编程演练数据结构《31》狄杰斯特拉算法
  4. rollup配置及使用
  5. git submodule子模块管理
  6. ★LeetCode(448)——找到所有数组中消失的数字(JavaScript)
  7. HIT Software Construction Review Notes (chapter three)
  8. Express简单路由使用
  9. 计算机网络学习(九)—应用层的概述
  10. 函数 注释规范_Go语言编码规范