微信小程序項目實踐之驗證碼倒計時功能
效果如下:點擊發(fā)送驗證碼按鈕,按鈕背景變色,不可點擊,顯示倒計時文字
首先js文件的data里面 聲明一個變量用于表示當(dāng)前是否可以點擊,codeIsCanClick = true
, 默認(rèn)是可以點擊的
寫下界面代碼:
wxml文件中
<view class='centerRow'> <view class='inputLabel'>動態(tài)碼:</view> <input class='inputStyle' style="flex:1 " bindinput="bindKeyInput" placeholder="短信動態(tài)碼" adjust-position='false' confirm-type='search'></input> <button class="emailCode" hidden='{{!codeIsCanClick}}' size="mini" bindtap='clickCode'>獲取動態(tài)碼</button> <button class="emailCodeSend" hidden='{{codeIsCanClick}}' size="mini">{{last_time}}秒后重新發(fā)送</button> </view>
對應(yīng)樣式 wxss文件:
.centerRow{ display: flex; flex-direction: row; align-items: center; height: 44px; padding-left: 16px; padding-right: 16px; border-bottom: 1rpx solid #D9D9D9; border-top: 1rpx solid #D9D9D9; } .inputStyle{ border-radius:4px; color:#D9D9D9; outline:0; padding-left: 4px; margin-left: 4px; margin-right: 20rpx; font-size: 14px; } .inputLabel{ font-size: 16px; color: #33496D; width: 90px; } .emailCode{ width: 118px; height: 28px; align-items: center; justify-content: center; display: flex; flex-direction: row; color:white; font-size: 14px; background-color: #50A2EC; border-radius: 14px; } .emailCodeSend{ width: 118px; height: 28px; align-items: center; justify-content: center; display: flex; flex-direction: row; color:white; font-size: 14px; background-color: #B9DAF7; border-radius: 14px; }
以上構(gòu)成頁面靜態(tài)效果。
注意button有兩個,分別對應(yīng)的未點擊和點擊下的按鈕樣子,用js中的CodeIsCanClick控制顯示隱藏
然后在js中寫邏輯代碼:
// 倒計時事件 單位s var countdown = 10; var settime = function (that) { if (countdown == 0) { that.setData({ codeIsCanClick: true }) countdown = 10; return; } else { that.setData({ codeIsCanClick: false, last_time: countdown }) countdown--; } setTimeout(function () { settime(that) }, 1000 ) } Page({ /** * 頁面的初始數(shù)據(jù) */ data: { codeIsCanClick: true }, /** * 點擊驗證碼按鈕 */ clickCode: function () { var that = this; settime(that) },
總結(jié)
以上所述是小編給大家介紹的微信小程序項目實踐之驗證碼倒計時功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
javascript導(dǎo)出csv文件(excel)的方法示例
這篇文章主要給大家介紹了關(guān)于javascript導(dǎo)出csv文件(excel)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用javascript具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08JavaScript實現(xiàn)字符串與日期的互相轉(zhuǎn)換及日期的格式化
這篇文章主要介紹了JavaScript實現(xiàn)字符串與日期的互相轉(zhuǎn)換及日期的格式化的方法,這里格式化使用的是正則表達式來替換日期后進行格式化,需要的朋友可以參考下2016-03-03為body標(biāo)簽和document.body都添加點擊事件后僅Firefox彈出了兩次
為body標(biāo)簽和document.body都添加點擊事件后僅Firefox彈出了兩次,需要的朋友可以參考下。2011-04-04