【5款登录验证校验】基于jquery实现的5款登录验证码组件(附完整源码)
文章目录
- 写在前面
- 涉及知识点
- 1、随机字母验证码
- 1.1 效果
- 1.2 实现源码
- 2、数字运算验证码
- 2.1 效果
- 2.2 实现源码
- 3、滑块验证码
- 3.1 效果
- 3.2 实现源码
- 4、图片补全验证码
- 4.1 效果
- 4.2 实现源码
- 5、顺序点选验证码
- 5.1 效果
- 5.2 实现源码
- 6、源码分享
- 6.1 百度网盘
- 6.2 123网盘
- 6.3 邮箱留言
- 总结
写在前面
写文章之前我总有一个习惯去说明一下我的创作背景,其实也是怕后面年纪大了记性不好,这次是我偶然翻到上次做的安全漏洞修复项目,里面就有一个登录校验的要求,防止一些机器模拟登录,这不需要添加一个随机码的填入校验,这次我就基于前端角度去看市面上常见的5种验证码组件。
涉及知识点
多种前端登录验证码实现源码,常见登录验证校验实现demo,如何实现数字运算验证码,随机字母验证码,拖动滑块验证码的实现方法,按顺序点击文字验证码的实现方法,如何实现拖动缺块到正确位置的验证码,多种前端验证码的实现方式,5种常见的前端验证码实现demo。
版权声明:此文原创于CSDN博主-《拄杖盲学轻声码》,主页有很多分享的代码,期待您的访问。
【切记】其实以下5种web验证码主要的实现方式还是通过引入verify.js组件,基于jquery来实现的,完整源码在第六章节可以自行下载。
1、随机字母验证码
这个是我们最初最常见的验证码了,通过生成随机的数字或者英文字母,或者两者混合,然后可以点击随机生成,最终输入匹配则校验通过。
1.1 效果
1.2 实现源码
html源码
<div class="validatePart"><h3>随机数字字符验证码</h3><div id="mpanel2"></div><button type="button" id="check-btn" class="verify-btn">确定</button>
</div>
Js源码
$('#mpanel2').codeVerify({type: 1,width: '200px',height: '50px',fontSize: '30px',codeLength: 6,btnId: 'check-btn',ready: function () {},success: function () {alert('验证匹配!');},error: function () {alert('验证码不匹配!');}
});
2、数字运算验证码
其实这个在先前软考查询成绩的官网上就最常见了,当时为了查询软考成绩,复习了不少小学数学运算呢。
2.1 效果
2.2 实现源码
html源码
<div class="validatePart"><h3>数字运算验证码</h3><div id="mpanel3" style="margin-top: 20px"></div><button type="button" id="check-btn2" class="verify-btn">确定</button>
</div>
Js源码
$('#mpanel3').codeVerify({type: 2,figure: 100, //位数,仅在type=2时生效arith: 0, //算法,支持加减乘,不填为随机,仅在type=2时生效width: '200px',height: '50px',fontSize: '30px',btnId: 'check-btn2',ready: function () {},success: function () {alert('验证匹配!');},error: function () {alert('验证码不匹配!');}
});
版权声明:此文原创于CSDN博主-《拄杖盲学轻声码》,主页有很多分享的代码,期待您的访问。
3、滑块验证码
滑块其实也是后面的人机校验常见的,一开始都是死的,被很多爬虫算法给识别模拟了,因此拖动校验的方式也应运而生。
3.1 效果
3.2 实现源码
html源码
<div class="validatePart"><h3>滑块拖动验证码</h3><div id="mpanel1"></div>
</div>
Js源码
$('#mpanel1').slideVerify({type: 1, //类型vOffset: 5, //误差量,根据需求自行调整barSize: {width: '80%',height: '40px',},ready: function () {},success: function () {alert('验证成功,添加你自己的代码!');//......后续操作},error: function () {// alert('验证失败!');}
});
4、图片补全验证码
这个和第三个是有点类似的,但是要求更高,要拖动到准确位置才能通过校验,也是目前市面上用的最多的一种安全验证的方式。
4.1 效果
4.2 实现源码
html源码
<div class="validatePart"><h3>图片补全验证码</h3><div id="mpanel4" style="margin-top:0px;"></div>
</div>
Js源码
$('#mpanel4').slideVerify({type: 2, //类型vOffset: 5, //误差量,根据需求自行调整vSpace: 5, //间隔imgName: ['1.jpg', '2.jpg'],imgSize: {width: '400px',height: '200px',},blockSize: {width: '40px',height: '40px',},barSize: {width: '400px',height: '40px',},ready: function () {},success: function () {alert('验证成功,添加你自己的代码!');//......后续操作},error: function () {// alert('验证失败!');}
});
5、顺序点选验证码
最早时候应该是火车购票系统,当时被很多人吐槽了的,就是找出什么锅碗瓢盆的点击验证,这个目前换了一种方式,就是按照给出的文字去几个备选的里面找出来,不然就不能通过验证,相对来说更需要有文字(图像)识别能力
5.1 效果
5.2 实现源码
html源码
<div class="validatePart"><h3>按顺序点选验证码</h3><div id="mpanel6" style="margin-top:10px;"></div>
</div>
Js源码
$('#mpanel6').pointsVerify({defaultNum: 4, //默认的文字数量checkNum: 2, //校对的文字数量vSpace: 5, //间隔imgName: ['1.jpg', '2.jpg'],imgSize: {width: '600px',height: '200px',},barSize: {width: '600px',height: '40px',},ready: function () {},success: function () {alert('验证成功,添加你自己的代码!');//......后续操作},error: function () {// alert('验证失败!');}
});
我主要是把我看到的常见一些登录验证场景给大家做了一个罗列与展示,希望能够让大家从中学到一些web登录验证相关的知识,当然如果大家有更多的前端验证码场景可以留言哈,一起互相学习互相进步!
6、源码分享
6.1 百度网盘
链接:https://pan.baidu.com/s/1W2tzFkQN99vkjzfZf4K67w
提取码:hdd6
6.2 123网盘
链接:https://www.123pan.com/s/ZxkUVv-AaI4.html
提取码:hdd6
6.3 邮箱留言
评论区留下您的邮箱账号,博主看到第一时间发给您,祝您生活愉快!
总结
以上就是今天要讲的内容,本文主要介绍了多种前端登录验证码实现源码,常见登录验证校验实现demo,如何实现数字运算验证码,随机字母验证码,拖动滑块验证码的实现方法,按顺序点击文字验证码的实现方法,如何实现拖动缺块到正确位置的验证码,多种前端验证码的实现方式,5种常见的前端验证码实现demo,也期待大家一起进步哈,2023年一起加油!!!
版权声明:此文原创于CSDN博主-《拄杖盲学轻声码》,主页有很多分享的代码,期待您的访问。
相关文章:

【5款登录验证校验】基于jquery实现的5款登录验证码组件(附完整源码)
文章目录 写在前面涉及知识点1、随机字母验证码1.1 效果1.2 实现源码 2、数字运算验证码2.1 效果2.2 实现源码 3、滑块验证码3.1 效果3.2 实现源码 4、图片补全验证码4.1 效果4.2 实现源码 5、顺序点选验证码5.1 效果5.2 实现源码 6、源码分享6.1 百度网盘6.2 123网盘6.3 邮箱留…...

数据结构的树存储结构
数据结构的树存储结构 之前介绍的所有的数据结构都是线性存储结构。本章所介绍的树结构是一种非线性存储结构,存储的是具有“一对多”关系的数据元素的集合。 (A) (B) 图 1 树的示例 图 …...

linux--epoll
epoll 参考文献 https://www.cnblogs.com/lojunren/p/3856290.html https://www.51cto.com/article/717096.html linux下的I/O复用epoll详解 要深刻理解epoll,首先得了解epoll的三大关键要素:mmap、红黑树、链表。 IO多路复用 首先需要了解什么是IO多…...

async和await
一,基本使用 其实就是之前学过的异步函数,异步编程在函数前写一个ansyc,就转化为异步函数,返回的是一个promise对象,于是就可以使用await关键字,可以把异步函数写成同步函数的形式,极大地提高代…...

如何从cpu改为gpu,pytorch,cuda
1.cmd输入nvcc -V 2.得到 cuda版本后,去pytorch官网 3.根据自己的cuda进行选择 4.复制上述链接,进入cmd 5.cmd中输入activate XXX,这里的"XXX"指代自己在工程中用到的环境 6.进入后,将刚才链接粘贴,回车等待下载结束 …...

JavaScript简介--语句--变量
目录 JavaScript简介 为什么学习 JavaScript JavaScript与ECMAScript的关系 JavaScript版本 JavaScript语句、标识符 语句 标识符 JavaScript保留关键字 变量 变量的命名规则 数据类型 变量的重新赋值 变量提升 运算符 条件语句 循环语句 JavaScript简介 JavaScri…...

Windows CMD 关闭,启动程序
Windows CMD 关闭,启动程序 1. Windows 通过 CMD 命令行关闭程序 示例:通过 taskkill 命令关闭 QQ 管家,但是这里有个问题,使用命令行关闭 QQ 管家时,会提示“错误: 无法终止 PID 1400 (属于 PID 22116 子进程)的进程…...

统计XML标注文件中各标注类别的标签数量
目标检测任务重,担心数据集中各标签类别不均衡,想统计XML标注文件中各标注类别的标签数量,可以使用以下脚本: import os import glob import xml.etree.ElementTree as etdef count_labels(source_dir):file_list glob.glob(os.…...

一百六十、Kettle——Linux上安装的Kettle9.2.0连接Hive3.1.2
一、目标 Kettle9.2.0在Linux上安装好后,需要与Hive3.1.2数据库建立连接 之前已经在本地上用kettle9.2.0连上Hive3.1.2 二、各工具版本 (一)kettle9.2.0 kettle9.2.0安装包网盘链接 链接:https://pan.baidu.com/s/15Zq9w…...

C++新经典03--共用体、枚举类型与typedef
共用体 共用体,也叫联合,有时候需要把几种不同类型的变量存放到同一段内存单元,例如,把一个整型变量、一个字符型变量、一个字符数组放在同一个地址开始的内存单元中。这三个变量在内存中占的字节数不同,但它们都从同…...

HCIP-OpenStack组件介绍
openstack把这些组件服务都集成到httpd服务中了,目的是为了提升性能。登入不了openstack在控制节点查下httpd服务,systemctl status httpd Horizon:提供webUI图形化界面的 Keystone:提供身份认证服务、授权、endpoint端点…...

2682. 找出转圈游戏输家
题目描述: n 个朋友在玩游戏。这些朋友坐成一个圈,按 顺时针方向 从 1 到 n 编号。从第 i 个朋友的位置开始顺时针移动 1 步会到达第 (i 1) 个朋友的位置(1 < i < n),而从第 n 个朋友的位置开始顺时针移动 1 步…...

RESTAPI简介与DRF使用
RESTAPI 以资源为url,通过不同的请求方式实现不同的行为。 以资源名作为url POST:增 …/student/ GET:查所有 …/student/ GET:查单个 …/student/<pk>/ 获取idpk的学生 DELETE:删 …/student/<pk>/ PUT&#…...

深度学习笔记(kaggle课程《Intro to Deep Learning》)
一、什么是深度学习? 深度学习是一种机器学习方法,通过构建和训练深层神经网络来处理和理解数据。它模仿人脑神经系统的工作方式,通过多层次的神经网络结构来学习和提取数据的特征。深度学习在图像识别、语音识别、自然语言处理等领域取得了…...

windows下载任意版本php
zzwindows.php.net - /downloads/releases/archives/ windows下载php,记录一下...

Linux命令
操作系统管理硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用。(作为中间人,连接软件和硬件)不同应用领域的主流操作系统 桌面操作系统 Windows系列::用户群体大 macOS:适合于开发人…...

TDD(测试驱动开发)?
01、前言 很早之前,曾在网络上见到过 TDD 这 3 个大写的英文字母,它是 Test Driven Development 这三个单词的缩写,也就是“测试驱动开发”的意思——听起来很不错的一种理念。 其理念主要是确保两件事: 确保所有的需求都能被照…...

C/C++
const 作用 修饰变量,说明该变量不可以被改变;修饰指针,分为指向常量的指针(pointer to const)和自身是常量的指针(常量指针,const pointer);修饰引用,指向…...

CCF C³ 走进百度:大模型与可持续生态发展
2023年8月10日,由CCF CTO Club发起的第22期C活动在百度北京总部进行,以“AI大语言模型技术与生态发展”主题,50余位企业界、学界专家、研究人员就此进行深入探讨。 CCF C走进百度 本次活动,CCF秘书长唐卫清与百度集团副总裁、深…...

Vue使用html2canvas将DOM节点生成对应的PDF
要通过Vue使用html2canvas将DOM节点生成对应的PDF,您需要安装html2canvas和jspdf这两个库。html2canvas用于将DOM节点转换为Canvas,而jspdf用于将Canvas转换为PDF。以下是一个简单的示例代码,展示了如何使用html2canvas和jspdf生成PDF文件&am…...

专访阿里云席明贤,视频云如何运用大模型与小模型来破茧升级2.0
不久前,LiveVideoStack与阿里云视频云负责人席明贤(花名右贤)展开一场深度的对话,一个是圈内专业的社区媒体,一个是20年的IT老兵,双方有交集、有碰撞、有火花。 面对风云变幻的内外环境,阿里云…...

Vue 2的计算属性与侦听器
计算属性 vs 方法 vs 侦听器 计算属性的出现是为了解决模板内表达式太过复杂而变得难以维护。 假设我们知道长和宽,要计算一个矩形的面积,如果没有计算属性,我们可能像下面这样处理: <div id"app"><input t…...

JavaScript基础:学习JavaScript语言的基本语法和常用操作,了解网页交互的基本原理
JavaScript是一种广泛应用于网页开发中的脚本语言,它可以与HTML和CSS一起使用,实现网页交互及动态效果。 以下是JavaScript的基本语法和常用操作: 变量声明:使用var、let或const关键字声明变量。 var name "John";let …...

网络每日一练
吴泽彬 C Ip 网络层 Tcp udp 传输层, Http 应用层 收起 1 回复 发布于 2019-10-11 12:07 举报 fighting2016 Java A类地址中的私有地址和保留地址: ①10.0.0.0到10.255.255.255是私有地址(所谓的私有地址就是在互联网上不使用,而被…...

asp.net core读取request内容
在Startup.cs中定义Middleware,设置缓存Http请求的Body数据。代码如下。自定义Middleware请放到Configure方法的最前面。 app.Use(next > new RequestDelegate(async context > {context.Request.EnableBuffering();await next(context);})); GET请求 HttpC…...

笔记:移植xenomai到nuc972(2)
接下来的测试,出现了两个问题 第一个问题是demo程序启动不了,这是上一篇文章忘记说的事,启动不了的原因是权限问题,提示需要root, 但我是用busybox搭的文件系统,直接就是root,不存在权限问题,所以问题出在应用上,经过一番调试后发现,问题出在xenomai的应用库上,具体位置在xen…...

记忆正则表达式的基本元件
正则常见的三种功能,它们分别是:校验数据的有效性、查找符合要求的文本以及对文本进行切割和替换等操作。 正则表达式,简单地说就是描述字符串的规则。在正则中,普通字符表示的还是原来的意思,比如字符 a,…...

低代码是什么?解决哪些问题?什么业务场景适合用低码开发?
目录 一、低代码是什么? 二、低代码解决方案的主要特点 01.可视化开发环境 02.预构建的组件和模板 03.集成的开发和测试工具 04.跨平台兼容性 05.可伸缩性和可扩展性 三、开发工具中的强者 四、你所在企业为什么要关心低代码开发? 五、什么业务场景适…...

SOA架构
SOA架构 Service-Oriented Architecture,SOA是一种软件架构模式,旨在将应用程序的不同功能划分为一组可重用的、自治的、可互操作的服务。 每个服务表示一个特定的业务功能,并通过定义明确的接口和协议来实现与其他服务的通信。 SOA的主要目…...

“深入探索JVM内部机制:解密Java虚拟机“
标题:深入探索JVM内部机制:解密Java虚拟机 摘要:本篇博客将深入剖析Java虚拟机(JVM)的内部机制,包括类加载、内存管理、垃圾回收、即时编译等关键组成部分。通过对JVM内部机制的解密,我们可以更…...