autojs时间同步

autojs时间同步,第1张

牙叔教程 简单易学

8.7.7-0

手机和服务器时间尽可能一致

手机一般默认设置 使用网络提供的时间

这个时间和服务器的时间一定是有误差的

我们还要把这个误差考虑进去

那么, 这个误差怎么算呢

当手机向服务器查询一次当前时间,

会产生一个手机时刻A

服务器会返回一个服务器时间

服务器时间 - 网络从手机到服务器的时长 = 手机时刻B(以服务器为标准)

手机时间误差 = 手机时刻B - 手机时刻A

用脚本引擎启动一个单独的脚本, 每隔一定时间, 去校正一下两个值, 并且用本地存储存起来

每当要获取服务器的时间, 我们就可以读取本地存储, 直接用公式计算出服务器的时间, 而不用去请求服务器

部分内容来自网络

//看你原先的代码 感觉不能实现你要的功能 就自己在你的基础上改了很多东西 ,如果感觉不行 就当我自己学习了

<html>

<head>

<title>现在开始倒计时</title>

<style>

*{

font-size:12px

}

</style>

<script>

var TIME = 10//给定的最大时间,可修改

var GUESS_TIME = 5//给定的最大猜数字,可修改

var time = TIME, s

var i, j = 1// 记数

var normal = true//是否是正常流程

var gamestart = false//游戏是否已经开始

// 初始化所猜数字

function init() {

time = TIME

i = Math.round(Math.random() * 10 + 1)

}

// 猜一下

function guess_start() {

var randnum = $('rettime').value

if (gamestart) {

if (randnum &&randnum != '请输入数字1--10之间') {

if (j <= GUESS_TIME) {

if (randnum == i) {

$('result').innerHTML += "<br>恭喜你,你猜对了" + i + "<br>"+ "你是第:" + j + "次,猜对的 "

guess_over()

} else if (randnum >i) {

$('result').innerHTML += "<br>你输入的数字太<font color='red'>大</font>了 "

} else {

$('result').innerHTML += "<br>你输入的数字太<font color='blue'>小</font>了 "

}

j++

} else {

$('result').innerHTML += "<br>很遗憾你已经没有机会了!" + "这个数字是:" + i+ " "

guess_over()

normal = false

}

} else {

$('result').innerHTML += "<br>请输入你猜的数字!"

}

} else {

$('result').innerHTML += "<br>游戏还未开始!请点击'" + $('gamestrat').value + "'"

}

}

// 猜结束

function guess_over(game_failure) {

cl()

j = 0

//重新开始

game_restart()

}

// 游戏开始

function game_start() {

init()

$('rettime').disabled = false

gamestart = true

// 倒计时开始

s = setInterval(retime, 1000)

}

//游戏重新开始重置为初始状态

function game_restart() {

reset()

}

// 倒计时结束

function cl() {

clearInterval(s)

}

// 游戏主要方法

function retime() {

if (time >0) {

$('gamestrat').value = '还剩' + (time <10 ? '0' + time : time) + "秒"

time--

} else {

if (normal)

$('result').innerHTML += "<br>时间到了 "

reset()

cl()

}

}

//重置为初始模式

function reset() {

$('gamestrat').value = '重新开始'

$('rettime').value = '请输入数字1--10之间'

$('rettime').disabled = true

gamestart = false

}

function $(id) {

return document.getElementById(id)

}

</script>

</head>

<body >

<input type="button" id="gamestrat" value="开始游戏" onclick="game_start()">

<input type="text" id="rettime" value="请输入数字1--10之间" disabled="true" onfocus="this.value=''" onkeyup="this.value=this.value.replace(/\D/,'')">

<a href="javascript:void 0" onclick="guess_start()">猜一下</a>

<div id="result"></div>

</body>

</html>


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/246338.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存