Html5生成验证码的示例代码
网站建设 2023-01-28 21:39www.1681989.com免费网站
利用Html5的canvas标签生成画布,在画布上利用随机生成的数字画上验证码,背景为随机生成的颜色和杂乱的直线与点点。
进阶利用表单插件属性绑定验证码数据(json)可以在发送时候或者异步通信进行后台数据获取与检查。
代码块
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>验证码</title> <style type="text/css"> #canvas{ cursor:poter; } </style> </head> <body> <canvas id="canvas" width="150px" height="50px"></canvas> <script> //生成随机数 function randomNum(m,max){ return Math.floor(Math.random()(max-m)+m); } //生成随机颜色RGB分量 function randomColor(m,max){ var _r = randomNum(m,max); var _g = randomNum(m,max); var _b = randomNum(m,max); return "rgb("+_r+","+_g+","+_b+")"; } //先阻止画布默认点击发生的行为再执行drawPic()方法 document.getElementById("canvas").onclick = function(e){ e.preventDefault(); drawPic(); }; function drawPic(){ //获取到元素canvas var $canvas = document.getElementById("canvas"); var _str = "0123456789";//设置随机数库 var _picTxt = "";//随机数 var _num = 4;//4个随机数字 var _width = $canvas.width; var _height = $canvas.height; var ctx = $canvas.getContext("2d");//获取 context 对象 ctx.textBasele = "bottom";//文字上下对齐方式--底部对齐 ctx.fillStyle = randomColor(180,240);//填充画布颜色 ctx.fillRect(0,0,_width,_height);//填充矩形--画画 for(var i=0; i<_num; i++){ var x = (_width-10)/_numi+10; var y = randomNum(_height/2,_height); var deg = randomNum(-45,45); var txt = _str[randomNum(0,_str.length)]; _picTxt += txt;//获取一个随机数 ctx.fillStyle = randomColor(10,100);//填充随机颜色 ctx.font = randomNum(16,40)+"px SimHei";//设置随机数大小,字体为SimHei ctx.translate(x,y);//将当前xy坐标作为原始坐标 ctx.rotate(degMath.PI/180);//旋转随机角度 ctx.fillText(txt, 0,0);//绘制填色的文本 ctx.rotate(-degMath.PI/180); ctx.translate(-x,-y); } for(var i=0; i<_num; i++){ //定义笔触颜色 ctx.strokeStyle = randomColor(90,180); ctx.begPath(); //随机划线--4条路径 ctx.moveTo(randomNum(0,_width), randomNum(0,_height)); ctx.leTo(randomNum(0,_width), randomNum(0,_height)); ctx.stroke(); } for(var i=0; i<_num10; i++){ ctx.fillStyle = randomColor(0,255); ctx.begPath(); //随机画原,填充颜色 ctx.arc(randomNum(0,_width),randomNum(0,_height), 1, 0, 2Math.PI); ctx.fill(); } return _picTxt;//返回随机数字符串 } drawPic(); </script> </body> </html>
到此这篇关于Html5生成验证码的示例代码的文章就介绍到这了,更多相关Html5生成验证码内容请搜索狼蚁SEO以前的文章或继续浏览狼蚁网站SEO优化的相关文章,希望大家以后多多支持狼蚁SEO!
网站设计
- 静宁会SEO的网站建设公司:全面提升您的网络影
- 提升在线业务的关键:选择最佳的丽水网站建设
- 浙江网站优化发展潜力如何
- 井研专业的网站建设公司:打造您的在线品牌
- 灵山SEO网站建设公司:提升您的在线业务表现
- 蒙城网站建设优化公司:提升您网站表现的理想
- 阳谷企业网站优化:提升线上业务力的关键
- 樟树专业的网站建设公司:打造您在线业务的坚
- 通河百度SEO排名的策略与技巧
- 重庆百度快照排名如何进行精准的客户引流
- 重庆百度快照排名
- 常宁便宜的建站公司:助您轻松打造在线业务
- 巫溪百度网站优化:提升网站曝光率与流量的关
- 湖北整站优化怎么做才能放大客户需求
- 闸北网站建设多少钱?全面解析与预算规划
- 辽宁企业网站优化怎么做电话营销