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

QQ登录

只需一步,快速开始

查看: 3363|回复: 5

[结贴] 如何在app中的任何一个页面判断超时无触摸就返回首页

[复制链接]

165

主题

626

帖子

1160

积分

金牌会员

Rank: 6Rank: 6

积分
1160
QQ
发表于 2018-1-24 16:39:40 | 显示全部楼层 |阅读模式
本帖最后由 邹胖胖 于 2018-1-24 17:01 编辑

我想在app中的任何一个页面去判断在5分钟内,如果页面没有被点击,就自动返回到首页。我的app中使用dialog和showPage两种方式,我的想法是:
1.在index页面定义一个全局变量,初始值为5,
2.在index页面增加一个定时器,1分钟刷新一次,每次让全局变量减1,如果全局变量的值等于0了,就关闭所有打开的页面回到首页;
3.在除了main页面的每一个页面都去监测是否有点击页面,如果有点击就把主页的那个全局变量重置为5;
这样只要在5分钟内有点击屏幕,主页的全局变量就永远大于0,页面正常运行;否则就回到主页;
但是我不知道这样是否可行,如何在其他页面获取index里面的全局变量?还有就是如何监测页面的任何一个地方是否被点击?

165

主题

626

帖子

1160

积分

金牌会员

Rank: 6Rank: 6

积分
1160
QQ
 楼主| 发表于 2018-1-24 17:21:13 | 显示全部楼层
现在第一个问题解决了,我用localStorage存储去解决全局变量的问题;
第二个监测点击事件不知道如何解决,因为如果只是单纯的去检测组件的点击事件,那页面的空白部分的点击就无法检测到
回复 支持 反对

使用道具 举报

165

主题

626

帖子

1160

积分

金牌会员

Rank: 6Rank: 6

积分
1160
QQ
 楼主| 发表于 2018-1-24 17:52:21 | 显示全部楼层
ok,解决了,使用$("body").bind("click")来监听。现在我终于理解到你们之前说的单页模式,其他页面都是一些片段的思想了,其实整个app的所有页面其实就是在一个页面是吧?所有只有一个body,只需要在main页面上使用$("body").bind("click")就可以监听到所有页面的点击事件了,除了html页面需要单独处理
回复 支持 反对

使用道具 举报

3

主题

20

帖子

98

积分

初级会员

Rank: 2

积分
98
QQ
发表于 2018-3-1 11:37:17 | 显示全部楼层
你好,你的全局变量是用LOCALSTORAGE存储?既然你说是单页,为什么不在main页面上变义,全局使用呢?
回复 支持 反对

使用道具 举报

发表于 2018-3-1 11:47:24 | 显示全部楼层
crdsoft 发表于 2018-3-1 11:37
你好,你的全局变量是用LOCALSTORAGE存储?既然你说是单页,为什么不在main页面上变义,全局使用呢? ...

是的 给window对象  定义 全局变量 也可以

localStorage 好处 是  可以做物理缓存,重启APP后   ,这个值依旧存在的
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

3

主题

20

帖子

98

积分

初级会员

Rank: 2

积分
98
QQ
发表于 2018-3-2 10:17:14 | 显示全部楼层
liangyongfei 发表于 2018-3-1 11:47
是的 给window对象  定义 全局变量 也可以

localStorage 好处 是  可以做物理缓存,重启APP后   ,这个 ...

这样的啊,你是如何利用LOCALSTORAGE进行存取的,有没有例子?给我做个参考
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-23 23:14 , Processed in 0.054255 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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