当前位置: 首页 > news >正文

【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 邮箱留…...

数据结构的树存储结构

数据结构的树存储结构 之前介绍的所有的数据结构都是线性存储结构。本章所介绍的树结构是一种非线性存储结构&#xff0c;存储的是具有“一对多”关系的数据元素的集合。 (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&#xff0c;首先得了解epoll的三大关键要素&#xff1a;mmap、红黑树、链表。 IO多路复用 首先需要了解什么是IO多…...

async和await

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

如何从cpu改为gpu,pytorch,cuda

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

JavaScript简介--语句--变量

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

Windows CMD 关闭,启动程序

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

统计XML标注文件中各标注类别的标签数量

目标检测任务重&#xff0c;担心数据集中各标签类别不均衡&#xff0c;想统计XML标注文件中各标注类别的标签数量&#xff0c;可以使用以下脚本&#xff1a; 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上安装好后&#xff0c;需要与Hive3.1.2数据库建立连接 之前已经在本地上用kettle9.2.0连上Hive3.1.2 二、各工具版本 &#xff08;一&#xff09;kettle9.2.0 kettle9.2.0安装包网盘链接 链接&#xff1a;https://pan.baidu.com/s/15Zq9w…...

C++新经典03--共用体、枚举类型与typedef

共用体 共用体&#xff0c;也叫联合&#xff0c;有时候需要把几种不同类型的变量存放到同一段内存单元&#xff0c;例如&#xff0c;把一个整型变量、一个字符型变量、一个字符数组放在同一个地址开始的内存单元中。这三个变量在内存中占的字节数不同&#xff0c;但它们都从同…...

HCIP-OpenStack组件介绍

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

2682. 找出转圈游戏输家

题目描述&#xff1a; n 个朋友在玩游戏。这些朋友坐成一个圈&#xff0c;按 顺时针方向 从 1 到 n 编号。从第 i 个朋友的位置开始顺时针移动 1 步会到达第 (i 1) 个朋友的位置&#xff08;1 < i < n&#xff09;&#xff0c;而从第 n 个朋友的位置开始顺时针移动 1 步…...

RESTAPI简介与DRF使用

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

深度学习笔记(kaggle课程《Intro to Deep Learning》)

一、什么是深度学习&#xff1f; 深度学习是一种机器学习方法&#xff0c;通过构建和训练深层神经网络来处理和理解数据。它模仿人脑神经系统的工作方式&#xff0c;通过多层次的神经网络结构来学习和提取数据的特征。深度学习在图像识别、语音识别、自然语言处理等领域取得了…...

windows下载任意版本php

zz​​​​​​​windows.php.net - /downloads/releases/archives/ windows下载php&#xff0c;记录一下...

Linux命令

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

TDD(测试驱动开发)?

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

C/C++

const 作用 修饰变量&#xff0c;说明该变量不可以被改变&#xff1b;修饰指针&#xff0c;分为指向常量的指针&#xff08;pointer to const&#xff09;和自身是常量的指针&#xff08;常量指针&#xff0c;const pointer&#xff09;&#xff1b;修饰引用&#xff0c;指向…...

CCF C³ 走进百度:大模型与可持续生态发展

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

Vue使用html2canvas将DOM节点生成对应的PDF

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

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数&#xff0c;对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论

路径问题的革命性重构&#xff1a;基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中&#xff08;图1&#xff09;&#xff1a; mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...

CSS | transition 和 transform的用处和区别

省流总结&#xff1a; transform用于变换/变形&#xff0c;transition是动画控制器 transform 用来对元素进行变形&#xff0c;常见的操作如下&#xff0c;它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...

在 Spring Boot 项目里,MYSQL中json类型字段使用

前言&#xff1a; 因为程序特殊需求导致&#xff0c;需要mysql数据库存储json类型数据&#xff0c;因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...