fenglinstudio
萌新项目人
采纳率98.5%
2016-03-29 06:29 阅读 1.4k
已采纳

随着时间后台数值添加的问题

我有一个页面,我想让它显示个每隔多少分钟就加一的数字,比如说现在我看这个数字是100,十分钟后就是101,再过5分钟就是102,并且不受访客和页面刷新影响。中间这个时间要在5分钟10分钟20分钟这三个内随机。不知怎么做到,asp、php、html、js、jq均可。随机做不到可以不做

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    tosmaller tosmaller 2016-03-29 09:22

    var thisNum;//定义
    var timeArray=[5,10,20];//定义随机时间数组
    var timeT=timeArray[Math.round(Math.random()*2)]*60*1000;//随机取出一个值赋值给timeT
    function addNum(){
    if(window.localStorage.getItem('thisNum')!=''){
    thisNum=window.localStorage.getItem('thisNum');//获取本地的数据
    }else{
    thisNum=100;
    }
    thisNum+=1;
    window.localStorage.setItem('thisNum',thisNum);//设置本地的数据
    console.log(window.localStorage.getItem('thisNum'));
    setTimeout(addNum(),timeT);
    timeT=timeArray[Math.round(Math.random()*2)]*60*1000;
    }
    window.onload=addNum();

            其实楼上说的对,只不过我用的是localstorage。功能上实现出来了,但是,如果用户清理浏览器缓存数据,一样会从初始数据开始
    
    点赞 评论 复制链接分享
  • showbo GoCityPass新加坡曼谷通票 2016-03-29 06:59

    你在后台做就行了,用线程之类的随机一个等待时间,负责更新数据库,客户端就用计时器定时从数据库获取值

    点赞 评论 复制链接分享
  • w172087242 little_how 2016-03-29 07:51

    前端做是最好的,不然还需要push数字到页面,可以把你的数字、等待时间、更新时间这些内容存放在cookie;
    页面刷新可以读取cookie里面设置timeout的时间已经timeout设定的时间,重新计算设计就ok啦。不刷新的话可以不用读取cookie内容;
    cookie只是保存的一个副本,这样不要耗费流量,并且及时,也不用做轮询。

    希望可以帮到你。

    点赞 评论 复制链接分享

相关推荐