微信小程序项目实践之验证码倒计时功能


Posted in Javascript onJuly 18, 2018

效果如下:点击发送验证码按钮,按钮背景变色,不可点击,显示倒计时文字

微信小程序项目实践之验证码倒计时功能

首先js文件的data里面 声明一个变量用于表示当前是否可以点击,codeIsCanClick = true,  默认是可以点击的

写下界面代码:

wxml文件中

<view class='centerRow'>
 <view class='inputLabel'>动态码:</view>
 <input class='inputStyle' style="flex:1 " bindinput="bindKeyInput" placeholder="短信动态码" adjust-position='false'  confirm-type='search'></input>
 <button class="emailCode" hidden='{{!codeIsCanClick}}' size="mini" bindtap='clickCode'>获取动态码</button>
 <button class="emailCodeSend" hidden='{{codeIsCanClick}}' size="mini">{{last_time}}秒后重新发送</button>
</view>

 

对应样式 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;
}

以上构成页面静态效果。

注意button有两个,分别对应的未点击和点击下的按钮样子,用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({
 /**
 * 页面的初始数据
 */
 data: {
 codeIsCanClick: true
 },
 /**
 * 点击验证码按钮
 */
 clickCode: function () {
 var that = this;
 settime(that)
 },

总结

以上所述是小编给大家介绍的微信小程序项目实践之验证码倒计时功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
关于juqery radio写法的兼容性问题(新老版本jquery)
Jun 14 Javascript
jquery基础教程之deferred对象使用方法
Jan 22 Javascript
avascript中的自执行匿名函数应用示例
Sep 15 Javascript
js实现横向百叶窗效果网页切换动画效果的方法
Mar 02 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
Aug 07 Javascript
JavaScript实现向右伸出的多级网页菜单效果
Aug 25 Javascript
jQuery实现简洁的导航菜单效果
Nov 23 Javascript
浅析vue数据绑定
Jan 17 Javascript
原生js检测页面加载完毕的实例
Sep 11 Javascript
详解ES6系列之私有变量的实现
Nov 21 Javascript
微信小程序全局变量的设置、使用、修改过程解析
Sep 24 Javascript
vue实现设置载入动画和初始化页面动画效果
Oct 28 Javascript
微信小程序日期选择器实例代码
Jul 18 #Javascript
JavaScript实现的反序列化json字符串操作示例
Jul 18 #Javascript
Angularjs实现多图片上传预览功能
Jul 18 #Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
Jul 18 #Javascript
微信小程序scroll-x失效的完美解决方法
Jul 18 #Javascript
详解easyui基于 layui.laydate日期扩展组件
Jul 18 #Javascript
Vue无限滑动周选择日期的组件的示例代码
Jul 18 #Javascript
You might like
加强版phplib的DB类
2008/03/31 PHP
php定时计划任务的实现方法详解
2013/06/06 PHP
PHP laravel中的多对多关系实例详解
2017/06/07 PHP
php经典趣味算法实例代码
2020/01/21 PHP
简单的前端js+ajax 购物车框架(入门篇)
2011/10/29 Javascript
js汉字转拼音实现代码
2013/02/06 Javascript
jQuery查询数据返回object和字符串影响原因是什么
2013/08/09 Javascript
JS滚轮事件onmousewheel使用介绍
2013/11/01 Javascript
你知道setTimeout是如何运行的吗?
2016/08/16 Javascript
Jquery Easyui菜单组件Menu使用详解(15)
2016/12/18 Javascript
详谈jQuery unbind 删除绑定事件 / 移除标签方法
2017/03/02 Javascript
JavaScript中undefined和null的区别
2017/05/03 Javascript
谈谈JS中的!!
2017/12/07 Javascript
对Angular中单向数据流的深入理解
2018/03/31 Javascript
微信小程序基础教程之worker线程的使用方法
2019/07/15 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
js 对象使用的小技巧实例分析
2019/11/08 Javascript
vue2.x数组劫持原理的实现
2020/04/19 Javascript
jquery自定义组件实例详解
2020/12/31 jQuery
两个命令把 Vim 打造成 Python IDE的方法
2016/03/20 Python
python 安装virtualenv和virtualenvwrapper的方法
2017/01/13 Python
python3实现抓取网页资源的 N 种方法
2017/05/02 Python
利用Python-iGraph如何绘制贴吧/微博的好友关系图详解
2017/11/02 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
2019/02/22 Python
Python实现图片裁剪的两种方式(Pillow和OpenCV)
2019/10/30 Python
如何基于Python pygame实现动画跑马灯
2020/11/18 Python
详解Html5微信支付爬坑之路
2018/07/24 HTML / CSS
HTML5画渐变背景图片并自动下载实现步骤
2013/11/18 HTML / CSS
雅虎笔试题(字符串操作)
2015/03/24 面试题
JSP&Servlet技术面试题
2015/05/21 面试题
药剂专业自荐书
2014/06/20 职场文书
统计专业自荐书
2014/07/06 职场文书
2014购房个人委托书范本
2014/10/12 职场文书
2014年售票员工作总结
2014/11/19 职场文书
胡桃夹子观后感
2015/06/11 职场文书
老生常谈 使用 CSS 实现三角形的技巧(多种方法)
2021/04/13 HTML / CSS