C# 如何倒计时,开始时间和结束时间通过服务器来算,在客户端上是统一的

小马430 2015-02-02 05:38:32
上网下载多个JS实例,效果不错,有结束时间,但没有开始的时间,放到服务器无法让客户端的时间都同步,请教好心人,帮忙,解决这个问题。
...全文
474 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
kkg_1473995421 2015-02-04
  • 打赏
  • 举报
回复
:JS实现倒计时示例 //js设置倒计时 <script type="text/javascript"> var msec=0 var sec=0 var min=0 function Time() { document.forms[0].time.value=min+":"+sec go=setTimeout("Time()",1) msec++ if(msec==1500) { msec=0 sec++ } if(sec==59) { if(min<20) { sec=0 min++ } } } </script> //cs页面实现刷新窗口 public static void RefreshOpener() { string js = @"<Script language='JavaScript'> opener.location.relocad(); </Script>"; HttpContext.Curent.Response.Write(js); }
小马430 2015-02-03
  • 打赏
  • 举报
回复
引用 9 楼 Z65443344 的回复:
getdate()这本身不就是SQL语句吗... 客户端时间不是应该用DateTime.Now吗
服务器时间差和客户端的差值为 ttime,在前台一个 <div id="someTimer1" class="someTimer" data-date="2015-02-08 08:00:00 + <%=ttime%>" ,这里要如何表示才能正确呢?
於黾 2015-02-03
  • 打赏
  • 举报
回复
哦,你的是JS,当我没说
於黾 2015-02-03
  • 打赏
  • 举报
回复
getdate()这本身不就是SQL语句吗... 客户端时间不是应该用DateTime.Now吗
小马430 2015-02-03
  • 打赏
  • 举报
回复
引用 7 楼 lj646333972 的回复:
[quote=引用 2 楼 sp1234 的回复:] 客户端在任何时候都可以去服务器获得与服务器的时间精确差(例如可以使用“简化的ntp算法”),然后客户端的目标时间就应该修正。例如客户端比服务器时间慢2分钟20秒,那么客户端的结束时间就应该比预计的结束时间提前2分20秒。
从你的回答可以感觉到你是个高手,我用的方法去试试看、[/quote] 计算时间差要怎么做呢?,客户端时间 var t= new date() 服务器的时间 datetime noww= SQL语句
小马430 2015-02-03
  • 打赏
  • 举报
回复
引用 2 楼 sp1234 的回复:
客户端在任何时候都可以去服务器获得与服务器的时间精确差(例如可以使用“简化的ntp算法”),然后客户端的目标时间就应该修正。例如客户端比服务器时间慢2分钟20秒,那么客户端的结束时间就应该比预计的结束时间提前2分20秒。
从你的回答可以感觉到你是个高手,我用的方法去试试看、
小马430 2015-02-03
  • 打赏
  • 举报
回复
引用 5 楼 Z65443344 的回复:
所谓"倒计时",绝逼不是用个timer每秒减去1 而是你已经知道了结束时间,那么用当前时间减去结束时间就是剩余时间了,这是最准确的,不会出现任何误差的方法 你纠结的不过是客户机时间和服务器时间不同步而已,获取一下服务器时间,然后计算和客户机时间的时间差不就得了
嗯,这个思路我想到了,获取服务器时间和获取客户端时间可以做到,后面的步骤不知道该怎么做,服务器时间我用的SQL语句,客户端的时间用的是getdate(),计算时间差,后面的内容不知道该如何做
於黾 2015-02-03
  • 打赏
  • 举报
回复
所谓"倒计时",绝逼不是用个timer每秒减去1 而是你已经知道了结束时间,那么用当前时间减去结束时间就是剩余时间了,这是最准确的,不会出现任何误差的方法 你纠结的不过是客户机时间和服务器时间不同步而已,获取一下服务器时间,然后计算和客户机时间的时间差不就得了
SmileSkyNet 2015-02-02
  • 打赏
  • 举报
回复
服务器设置一个定时器,客户端都去读这个时间
  • 打赏
  • 举报
回复
客户端在任何时候都可以去服务器获得与服务器的时间精确差(例如可以使用“简化的ntp算法”),然后客户端的目标时间就应该修正。例如客户端比服务器时间慢2分钟20秒,那么客户端的结束时间就应该比预计的结束时间提前2分20秒。
本软件在支持TCP/IP协议的网络内都可使用,替代传统的电子抢答器,解决传统的电子抢答器极易损坏且布线麻烦费用高等问题,准确灵敏。实际使用时,一台微机作服务器,其他微机与服务器在同一局域网上就可以进行抢答,参赛队数目前最多支持 100 个(理论上可以支持无限,但是受图形界面版面布局限制)满足绝大多数的抢答需求。 服务端主要功能设置: 1、标题设置:标题内容颜色可以修改,方便于不同场合使用。 2、端口设置:端口可以修改,并避免与其他软件冲突。 3、声音设置:服务端在用户上线、抢答犯规、抢答成功、问题回答正确和回答错误时或者超时都有不同的声音提示。声音可以自行设置。 4、设置分数:初始分、答对加分、打错扣分、抢答扣分、超时扣分以及答题时限。 5、图形设置:可设置图标数量行和列数 以及不同状态下图标的颜色。 6、题号设置:点击题号控制按钮时,给所有客户机发送“请做好抢答准备!”信息,但此时抢答将会犯规;在点击“开始抢答”后方可正式抢答。犯规者扣分并且只能等待竞答下一题。 7、抢答设置:在点击“开始抢答”后方可正式抢答。抢答成功会答题显示倒计时面板。 在答题(倒计时)面板点击“答对了”按钮加分,点击“答错了”按钮扣分,没点击这两个按钮的话,倒计时完成会自动扣分。 8、题目导入:将比赛题目按行录入文本文件(每行一题。避免出错编辑题目时关闭自动换行)然后从txt文件导入题目。 9、全屏设置:为方便投影展示,可以设置全屏。 客户端主要功能设置: 在客户端输入序号、代表队名称及服务器IP地址,按连接服务器服务器上相应代表队序号图标变色。客户端等待服务器命令进行抢答操作。序号重复会提示更改序号重新连接。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧