起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3172|回复: 7

[处理中3] 怎么设置倒计时

[复制链接]

70

主题

170

帖子

498

积分

中级会员

Rank: 3Rank: 3

积分
498
QQ
发表于 2017-10-19 15:21:16 | 显示全部楼层 |阅读模式
我想做一个倒计时的按钮,进入页面10秒后才能点击,请问要怎样实现呢?
发表于 2017-10-19 16:42:35 | 显示全部楼层
使用 setInterval 方法 就可以做倒计时!

使用popOver 做一个遮罩 就可以!  10秒后关闭遮罩
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

70

主题

170

帖子

498

积分

中级会员

Rank: 3Rank: 3

积分
498
QQ
 楼主| 发表于 2017-10-20 09:30:59 | 显示全部楼层
liangyongfei 发表于 2017-10-19 16:42
使用 setInterval 方法 就可以做倒计时!

使用popOver 做一个遮罩 就可以!  10秒后关闭遮罩 ...

但是我要在按钮上可以看到倒数,是要怎样弄呢
回复 支持 反对

使用道具 举报

70

主题

170

帖子

498

积分

中级会员

Rank: 3Rank: 3

积分
498
QQ
 楼主| 发表于 2017-10-20 10:17:09 | 显示全部楼层
liangyongfei 发表于 2017-10-19 16:42
使用 setInterval 方法 就可以做倒计时!

使用popOver 做一个遮罩 就可以!  10秒后关闭遮罩 ...

Model.prototype.modelLoad = function(event) {
                time = 10;
                _this = this;
                setTimeout("countTime()",1000)
                //countTime();
        }

        function countTime() {
                if (time >= 0) {
                        _this.comp("button1").set({
                                "label" : "剩余" + time + "秒"
                        })
                        time--;
                        setTimeout("countTime()",1000);
                       
                }
        }

setTimeout在wex5不能用的吗??一直说我的countTime()未定义
回复 支持 反对

使用道具 举报

70

主题

170

帖子

498

积分

中级会员

Rank: 3Rank: 3

积分
498
QQ
 楼主| 发表于 2017-10-20 10:17:28 | 显示全部楼层
liangyongfei 发表于 2017-10-19 16:42
使用 setInterval 方法 就可以做倒计时!

使用popOver 做一个遮罩 就可以!  10秒后关闭遮罩 ...

Model.prototype.modelLoad = function(event) {
                time = 10;
                _this = this;
                setTimeout("countTime()",1000)
                //countTime();
        }

        function countTime() {
                if (time >= 0) {
                        _this.comp("button1").set({
                                "label" : "剩余" + time + "秒"
                        })
                        time--;
                        setTimeout("countTime()",1000);
                       
                }
        }

setTimeout在wex5不能用的吗??一直说我的countTime()未定义

回复 支持 反对

使用道具 举报

发表于 2017-10-20 10:19:20 | 显示全部楼层
23352127 发表于 2017-10-20 09:30
但是我要在按钮上可以看到倒数,是要怎样弄呢

可以定义一个OK对象! 表示剩余时间 秒数
setInterval 方法中 一秒执行一次 ,修改ko对象的值,每次递减1即可!

当ko对象等于0的时候,就结束clearInterval

button 下的span标签bind-text绑定 这个ko对象即可
ko绑定用法
http://doc.wex5.com/data-bind-text/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

70

主题

170

帖子

498

积分

中级会员

Rank: 3Rank: 3

积分
498
QQ
 楼主| 发表于 2017-10-20 13:42:30 | 显示全部楼层
23352127 发表于 2017-10-20 10:17
Model.prototype.modelLoad = function(event) {
                time = 10;
                _this = this;

我用setTimeout跟setInterval都会说我方法未定义是什么鬼???
Model.prototype.modelLoad = function(event) {
                time = 10;
                _this = this;
                setTimeout("countTime()",1000)
                //countTime();
        }

        function countTime() {
                if (time >= 0) {
                        _this.comp("button1").set({
                                "label" : "剩余" + time + "秒"
                        })
                        time--;
                        setTimeout("countTime()",1000);
                        
                }
        }

类似这个,用两个方法都不行
回复 支持 反对

使用道具 举报

发表于 2017-10-20 14:24:20 | 显示全部楼层
23352127 发表于 2017-10-20 13:42
我用setTimeout跟setInterval都会说我方法未定义是什么鬼???
Model.prototype.modelLoad = function(e ...

  setTimeout("countTime",1000); 不要加括号!
setInterval 是定时循环执行的!  
setTimeout  是只执行一次!

建议使用setInterval  ,用自己上网搜下吧!

比如参考
http://docs.wex5.com/wex5-ui-question-list-2104/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-27 19:14 , Processed in 0.062670 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表