Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >跨页面刷新保存计数器值

跨页面刷新保存计数器值
EN

Stack Overflow用户
提问于 2013-08-30 09:50:00
回答 4查看 424关注 0票数 3

我希望每2.7秒将1加到一个值;我不希望它每次刷新页面时都重置

是否有一种方法可以增强以下代码,使之成为可能?我对php一无所知,也不了解JS,但是我想学习php,我觉得它可以是一个解决方案。

这是柜台的线。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span id="counter" class="bladeometer" style="letter-spacing: 3px;">198567970</span>

这是运行它的代码。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var timer;


function startCount()
{
timer = setInterval(count,2700);
}
function count()
{
var el = document.getElementById('counter');
var currentNumber = parseFloat(el.innerHTML);
el.innerHTML = currentNumber+1;

}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-08-30 10:07:16

这完全可以通过Javascript来实现。页面刷新后,它将保持同步,甚至对所有访问该网站的用户都是一样的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var el = document.getElementById('counter');
//Set the date of when it starts to February 3rd, 2013. Javascript counts months from 0-11
var startTime = Math.floor(new Date(2013, 1, 3) / 1000);
var startNumber = 200000000;

var timer = setInterval(function() {
    var currentTime = Math.floor(new Date() / 1000);
    var secondsSinceStart = currentTime - startTime;

    el.innerHTML = Math.floor(startNumber + (secondsSinceStart / 2.7));
}, 2700);

它的工作方式是计算自计数器启动以来所经过的秒数,然后除以2.7,看看计数器的值应该是多少。我使用Math.floor(),所以计数器中的数字是整数。

Date.time()所做的是获取自时代以来的毫秒数(您可以在date)上阅读到它)。我把它除以1000,得到自那个时代以来的秒数,然后我把它加起来,所以这个数字是一个整数。

如果你需要任何帮助,了解它的任何部分,请随意问。

演示:http://codepen.io/skimberk1/pen/dbf41f6dae413a39bd05650ef8796319

票数 0
EN

Stack Overflow用户

发布于 2013-08-30 09:54:38

您可以使用服务器发送的事件。以下是http://www.html5rocks.com/en/tutorials/eventsource/basics/的解释和示例

票数 1
EN

Stack Overflow用户

发布于 2013-08-30 09:57:30

我想你希望这个计数器是全局的,而不是每个用户。你展示的方法不太好。如果使用AJAX或其他存储值的方法,它可能会起作用,但这并不是必要的。事实上,我觉得这是个愚蠢的解决方案。

由于计数器在不断增加,所以您需要找到始终存在的东西,并且可以从中计算计数器值。当然,我说的是时间。

弄清楚你的柜台什么时候会是零。那是你的参考时间。现在,每次打开页面时,使用(current time - reference time) * increase value计算计数器,因此由于增量值是1 / 2.7 (谢谢马修),公式是(current time in seconds - reference time in seconds) / 2.7),就这样了!这是您的计数器需要在每次页面加载上获得的值。

这样,您的代码将在页面上实时更新计数器,而我给出的时间计算将确保计数器号“在窗帘后面”是正确的,以便当您刷新页面时,得到的值与您一直在页面时得到的值相同。只需确保您使用一个时区,并坚持使用它,以避免来自不同区域的用户具有不同的计数器值(略有不同,但仍然不需要这样做)。

的底线:使用您的代码在页面上更新计数器,并使用我向您展示的内容来确定页面加载时计数器的起始值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18538760

复制
相关文章
【Python】函数 ③ ( 函数返回值定义语法 | 函数返回多个返回值 | 代码示例 )
在 Python 函数中 , 通过 return 关键字 , 可以返回一个结果给调用者 , 这个返回结果就是 函数返回值 ;
韩曙亮
2023/10/11
7470
【Python】函数 ③ ( 函数返回值定义语法 | 函数返回多个返回值 | 代码示例 )
Go语言函数的参数和返回值
第一类对象(first-class object)指可在运行期创建,可用作函数参数或返回值,可存入变量的实体。最常见的用法就是匿名函数。
博文视点Broadview
2020/06/12
2.5K0
Go语言函数的参数和返回值
【说站】python函数如何返回多个值
一般情况下,一个函数只有一个返回值,Python也是如此,只是Python函数可以通过返回列表或元组的方式将返回的多个值保存到序列中,从而间接达到返回多个值的目的。
很酷的站长
2022/11/23
2.3K0
【说站】python函数如何返回多个值
返回指针值的函数(2)
请自己理解,比较简单 /**对前面那个问题,输出有不及格成绩的学生的所有成绩**/ #include <stdio.h> #include <stdlib.h> int main() { float a[3][4]={{50,99,80,50},{55,60,85,90},{10,54,74,26}}; float *p; float *aa(float (*pt)[4]); int i; for(i=0;i<3;i++) { p=aa((
谙忆
2021/01/19
2.7K0
printf函数的返回值!
这样的题目第一眼看上去有一点懵,其实它考的就是printf函数的返回值,及输出字符的个数。 输出结果
lexingsen
2022/02/24
3.3K0
[Python基础06]函数的参数&返回值
我们通常在进行一些功能处理的过程中,需要执行一行或者多行代码来完成整个业务流程的处理,如:
周小董
2022/04/12
4K0
[Python基础06]函数的参数&返回值
JS|函数的返回值
这个看似能输出结果,实则是在逻辑上是不合理的,我们函数是做某件事或者实现某种功能,而在上面的代码中,函数提供了‘aru’,结果自己却把该参数给输出了。这好比是鸡生了蛋,自己却把蛋给吃了。那我们吃蛋壳吗?所以,接下来我会介绍一种逻辑更严谨的代码。
算法与编程之美
2020/03/12
11.4K0
函数的return(返回值)
return之后,函数就停止,return之后的语句将不执行,但是php也不会报错。
十月梦想
2018/08/29
3.8K0
函数的多个返回值
def func1(): # return 值1,值2 --- return有一个作用是打断程序的运行 return 1 + 1 , 2 + 2, 3+4 num1,num2,num3 = func1() print(func1()) print(num1) print(num2) print(num3)
汪凡
2018/05/29
5.6K0
函数的变量+返回值
函数的变量: 局部变量 和 全局变量 Python中的任何变量都有特定的作用域 在函数中定义的变量一般只能在该函数内部使用,这些只能在程序的特定部分使用的变量我们称之为局部变量 在一个文件顶部定义的变量可供文件中的任何函数调用,这些可以为整个程序所使用的变量称为全局变量 (1)、局部函数: #!/usr/bin/python def fun(): x = 100 ##定义一个内部的函数是 x = 100,只在fun() 内部有效。 print x fun() 执行结果: [[e
老七Linux
2018/05/31
4.9K0
7.5 返回指针值的函数
例如“int *a(int x,int y);”a是函数名,调用它以后能得到一个int *型的指针,即整型数据的地址
小林C语言
2019/08/09
1.8K0
python函数的返回值
返回值:return 1.没有返回值     #不写return     #只写return:结束一个函数     #return None 2.有一个返回值     #可以返回任何数据类型     #只要返回就可以接收到     #如果在一个程序中有多个返回值,只执行一个(只要执行了return,函数就结束了) 3.有多个返回值     #用多个变量接受,有多少个返回值就有多少个变量     #用一个变量接受:接收到的是一个元祖(Python解释器)
py3study
2020/01/19
3.4K0
返回指针值的函数(1)
/**有a个学生,每个学生有b门课程的成绩。要求在用户输入学生序号以后, **/ #include <stdio.h> #include <stdlib.h> int main() { float *aa(int (*p)[4],int n); float a[3][4]={{50,99,80,50},{55,60,85,90},{10,54,74,26}}; float *pt; int k; scanf("%d",&k); pt=aa(a,k);
谙忆
2021/01/19
2.3K0
HashMap 计算 Hash 值的扰动函数
理论上 hash 散列是一个 int 值,如果直接拿出来作为下标访问 hashmap 的话,考虑到二进制 32 位,取值范围在-2147483648 ~ 2147483647。大概有 40 亿个 key , 只要哈希函数映射比较均匀松散,一般很难出现碰撞。
没有故事的陈师傅
2023/03/08
1.3K0
HashMap 计算 Hash 值的扰动函数
C语言中的函数为什么只能有一个返回值输出?怎么实现多个值输出?
这是典型的C语言中函数模块中的返回值问题,算是常见的语法细节,很多人觉得C语言已经过时了,只能代表着这类人还不算是真正的技术人员,在嵌入式领域C语言依然充当着非常重要的角色,C语言在很多领域还是首选编程语言,主要在强调性能以及靠近硬件的编程中还是发挥着极其重要的作用,C语言常见的难点屈指可数,但组合起来使用难度会提升许多。
程序员互动联盟
2019/05/08
7.5K0
C语言中的函数为什么只能有一个返回值输出?怎么实现多个值输出?
C++返回指针值的函数 | 按字母顺序由小到大输出
学到这里的读者应该知道在C语言中,函数指针变量常见的用途之一是作为函数的参数,将函数名传给其他函数的形参,这样可以在调用一个函数的过程中根据给定的不同实参调用不同的函数,在C++中同样如此。
小林C语言
2020/12/22
1.5K0
C++返回指针值的函数 | 按字母顺序由小到大输出
java:函数--返回多个值
1、【使用集合类】使用map返回值;这个方法问题是,你并不知道如何返回值的key是什么,只能通过doc或者通过源代码来查看。
用户7886150
2020/12/14
2.7K0
Go:命名返回值和直接返回值的使用与潜在隐患
在这个例子中,虽然给命名返回值result赋值了,但最终函数却直接返回了a + b的计算结果,而不是result的值。
运维开发王义杰
2023/08/21
3200
Go:命名返回值和直接返回值的使用与潜在隐患
golang 中函数使用值返回与指针返回的区别,底层原理分析
Go 程序会在两个地方为变量分配内存,一个是全局的堆上,另一个是函数调用栈,Go 语言有垃圾回收机制,在Go中变量分配在堆还是栈上是由编译器决定的,因此开发者无需过多关注变量是分配在栈上还是堆上。但如果想写出高质量的代码,了解语言背后的实现是有必要的,变量在栈上分配和在堆上分配底层实现的机制完全不同,变量的分配与回收流程不同,性能差异是非常大的。
田飞雨
2021/10/19
5.4K0
golang 中函数使用值返回与指针返回的区别,底层原理分析
stat()函数_stat函数返回值
在 linux 中,经常需要获取文件的属性,比如修改时间,文件大小等等。stat 函数将会帮助我们得到这些信息。
全栈程序员站长
2022/09/24
3.4K0

相似问题

HashMap.values()和HashMap.keySet()如何返回值和键?

30

如何使用hashmap分配键和值?

10

根据数组中的值检查值,然后使用PHP返回键

44

输入的特定键的java hashmap返回键和值

19

HashMap键和值

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文