Axure设计:动态随机获取“大小写字母及数字”图形校验码/验证码

各大互联网站因为安全校验需要,防止站点大量重复请求、机器人暴力访问等情况,在校验用户身份时常采用图形校验码方式。作者将通过这篇案列分享,教大家使用Axure制作实现“获取验证包含大小写字母与数字的随机图形校验码”。

演示地址:获取验证包含大小写字母与数字的随机校验码

实现效果

校验码随机显示,包含0-9的数字,a-z的小写字母,A-Z的大写字母;

点击“验证码区域”或“看不清,换一张”文本时,刷新校验码;

校验码输入为空时,点击“提交验证”,弹出内容为“校验码不能为空!”的提示信息,刷新校验码;

校验码输入错误时,点击“提交验证”,弹出内容为“请输入正确的校验码!”的提示信息,刷新校验码,清空文本框内容;

校验码输入正确时,点击“提交验证”,弹出内容为“校验码验证成功!”的提示信息。

原理分析

(1)图片背景+随机校验码组成图形校验码

(2)随机校验码是由4个随机的字母或数字组成

(3)先实现获取1位随机校验码

将大写A-Y,小写a-y,数字0-9写入一个文本标签中,共计62个字符;

利用Math.random()函数获取0-1之间的随机数A(0≤A<1);

利用随机数A*62获取0-62之间的随机数B(0≤B<62);

利用Math.floor(B)函数 获取B向下取整数C(0≤C<62);

利用charAt(C)函数 获取文本指定位置为C的字符。

(4)将1位随机校验码复制3次,组成4个随机校验码

(5)利用元件载入、单击元件等方式触发校验码动态变化

元件准备

源数据文本标签,用于存放大小写A-Y字母及0-9数字;

校验码文本标签,用于显示图形检验码的文字;

校验码背景图片,放在图形校验码文字底部;

刷新元件,用于点击触发校验码刷新;

输入框,用于动态输入校验码;

输入框背景,放在输入框底部;

提交按钮,触发输入框中文字校验;

背景,整个案例的演示背景,可要可不要;

错误提示组合元件,用于显示校验出错时的提示;

成功提示组合元件,用于显示校验成功时的提示。

隐藏源文件、提示元件,重新布局元件后效果如下:

实现步骤

(1)页面首次加载时事件

源数据文本标签载入时,设置校验码元件的文字为4位随机校验码。

赋值校验码元件文字时,需要设置为富文本格式,从而可以设置校验码的4位字符显示不同颜色。

利用Math.random()、Math.floor(x)函数获取0到62之间的整数C(0≤C<62),利用b.charAt(C)函数获取b元件在C位置的字符;依次复制三次,每次设置不同的颜色。

到这里,就已经完成了四位随机校验码的获取功能。

(2)图形校验码点击事件

点击图形校验码时,设置校验码元件的文字为4位随机校验码。

实用小技巧:复制源数据元件载入时的设置方法,黏贴至校验码元件单击时,即可完成单击时的文字设置。

(3)“看不清,换一换”点击事件

点击“看不清,换一换”元件时,我们可以采用与图形校验码点击事件相同的方式设置元件文字,但是此处我们用一种新的方式设置元件文字。我们在点击元件时,触发“图形校验码点击事件”,从而设置校验码元件的文字为4位随机校验码。

触发“校验码”鼠标单击事件。

(4)校验码提交验证事件

当我们点击“提交验证”按钮时,如果提交的输入表单为空,提示“校验码不能为空!”;如果提交的输入表单内容与图形校验码内容不同时,提示“请输入正确的校验码”,同时重置图形校验码内容;如果提交的输入表单内容与图形校验码内容一致时,则进入下一环节。

实用小技巧:利用显示事件的“灯箱效果”,背景色为黑色,透明度设置为20%,提示效果很漂亮。

本案例已完成,点击QQ群“532261671”获取源文件;

点击查看上一篇案例“双向列表带计数选择”;

更多案例请点击http://www.pmgod.cn 查看。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,602评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,442评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,878评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,306评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,330评论 5 373
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,071评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,382评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,006评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,512评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,965评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,094评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,732评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,283评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,286评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,512评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,536评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,828评论 2 345

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明先生_x阅读 15,968评论 3 119
  • 雪花旋舞着漫天而下 追随着昨日淅沥小雨的脚步绵延而来 像是被拉进一个白色的梦境 推开窗 一片明亮的纯洁 我缓行在她...
    暖暖幸尔阅读 297评论 2 4
  • 回来3天,感慨颇多。 一系琐事,这两天市里乡里家里来回奔波。 妹妹不住宿舍,难免会有些叨扰,一直以来都是独居。斜对...
    爱人与故乡阅读 297评论 0 2
  • 徐灵胎说:“欲治病者,必先识病之名;能识病名,而后求其病之所由生;知其所由生,又当辨其生之因各不同而症状所由异;然...
    彭泰来文化公益理事会阅读 2,532评论 0 0