Axure教程:短信驗(yàn)證碼實(shí)現(xiàn)倒計(jì)時(shí)

2 評(píng)論 11358 瀏覽 21 收藏 6 分鐘

編輯導(dǎo)讀:本文跟大家分享,如何用Axure實(shí)現(xiàn)短信驗(yàn)證碼倒計(jì)時(shí)效果,作者從預(yù)覽圖,到所需基本原件,再到操作步驟都一一展開了分析,并對(duì)過程中需要注意的問題進(jìn)行了介紹,希望對(duì)你有所啟發(fā)。

這個(gè)是新用戶注冊(cè)交互,使用到了驗(yàn)證碼倒計(jì)時(shí),本文只針對(duì)驗(yàn)證碼倒計(jì)時(shí)功能做解釋,不對(duì)用戶名填寫完整進(jìn)行判斷,如下圖:

圖1

其中隱藏了動(dòng)態(tài)面板來(lái)回切換的狀態(tài),為了進(jìn)行驗(yàn)證碼秒數(shù)遞減,如下圖2:

圖2

01 基本元件

1、文本標(biāo)簽*2

2、動(dòng)態(tài)面板*1(2個(gè)狀態(tài)命名為:圓形;矩形)

3、倒計(jì)時(shí)按鈕*1

思路:

1、實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí)要用到函數(shù)[[Math.random()]]、[[Math.exp()]]和[[substring(from,to)]]

[[Math.random()]]這個(gè)函數(shù)會(huì)隨機(jī)取0~1之間的數(shù)字,具體取小數(shù)點(diǎn)幾位,網(wǎng)上沒有說(shuō)明,我這里試了一下取得位數(shù)大致在15-18位之間,這個(gè)影響不大;

[[Math.exp(x)]]是獲取一個(gè)數(shù)值的指數(shù),例[[Math.exp(2)]]:表示e的2次方的數(shù)值;

[[substring(from,to)]]是取截止的字符串的,例[[V.substring(2,7)]],其中V=2343242342:表示截取的數(shù)值為432423;

這里針對(duì)隨機(jī)生成6位數(shù)字驗(yàn)證碼做詳細(xì)說(shuō)明,后面對(duì)函數(shù)就一概而過了

這里取驗(yàn)證碼就是上面三個(gè)函數(shù)來(lái)生成,可能有更簡(jiǎn)單的方法,我之前也用兩個(gè)函數(shù)試過,但是總會(huì)出現(xiàn)bug,由于?[[Math.random()]]函數(shù)可能取得非常小,如:0.00000211,就會(huì)出現(xiàn)驗(yàn)證碼生成不是六位,為此嘗試了很多,最終為了100%生成隨機(jī)6位數(shù)就用了3個(gè)函數(shù)組合:[[(Math.exp(Math.random())*1000000).substring(1,7)]],表示:隨機(jī)取一數(shù)值的指數(shù)函數(shù)*1000000的數(shù)值,然后截取數(shù)值的第1位到第7位。這里乘以1000000是為了去除小數(shù)點(diǎn);

2、點(diǎn)擊驗(yàn)證碼后要顯示倒計(jì)時(shí),這里的倒計(jì)時(shí)要利用動(dòng)態(tài)面板來(lái)回轉(zhuǎn)換顯示秒數(shù),如上圖2;

02 詳細(xì)添加交互(只針對(duì)驗(yàn)證碼倒計(jì)時(shí)功能做解釋,不對(duì)用戶名填寫完整進(jìn)行判斷)

1、添加按鈕,修改名稱:驗(yàn)證碼,(設(shè)置交互樣式:禁用時(shí)-填充灰色)

2、拖入2個(gè)文本標(biāo)簽(一個(gè)命名:顯示文本;另一個(gè)命名:s(設(shè)置為隱藏)

3、添加動(dòng)態(tài)面板(命名為:簡(jiǎn)約驗(yàn)證碼)

4、驗(yàn)證碼添加動(dòng)作:?jiǎn)螕魰r(shí)-設(shè)置變量值-禁用-等待-顯示-設(shè)置文本,如下圖:

4.1 設(shè)置變量值(這個(gè)是全局變量,好處是可以根據(jù)需要更改驗(yàn)證碼的倒計(jì)時(shí)的時(shí)長(zhǎng))

4.2 在設(shè)置面板狀態(tài)(下一項(xiàng)-向后循環(huán)-循環(huán)間隔1000s(為了實(shí)現(xiàn)驗(yàn)證碼數(shù)值遞減))

4.3 在禁用驗(yàn)證碼-等待1000s-顯示s(在這里隱藏了一個(gè)文本,秒s)

4.4 設(shè)置文本

就是前面提到的函數(shù)[[(Math.exp(Math.random())*1000000).substring(1,7)]]

03 動(dòng)態(tài)面板添加動(dòng)作

動(dòng)態(tài)面板的動(dòng)作為了判斷要不要停止循環(huán),這里不做多解釋。

 

本文由 @鑫小包 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載

題圖來(lái)自?Unsplash,基于 CC0 協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 這個(gè)axure是哪個(gè)版本,很多設(shè)置都找不到

    來(lái)自廣東 回復(fù)
    1. axure rp 9

      來(lái)自廣東 回復(fù)