我正在使用HTML、CSS和JavaScript编写一个浏览器游戏,使用Perl编写。健康和耐力保存在服务器上,我使用JavaScript在当前页面加载时向用户显示这些统计数据的实时更新计数。这个功能运行良好,但是如果用户切换标签或切换到其他应用程序并将浏览器留在后台运行,当您返回时看到的计数值无法正确跟上。所以当您切换回浏览器时,您的计数器可能显示50/100的耐力,而实际上您的耐力是100/100。因此,当您在游戏中执行某个操作(加载新页面)时,服务器会将计数器更新为真实的数值,因为JavaScript只是计时以向用户在浏览器中显示一个“实时”滚动视图。
有没有办法确保即使页面/标签不活动或不在前台,JavaScript计数器仍然可以正常工作?除了完全重写我的游戏以在浏览器中向用户显示连续的实时服务器推送内容之外?
假设您正在玩游戏。您会看到您的健康和耐力在恢复。您切换到另一个程序一分钟,然后返回到浏览器中的游戏。您会注意到您离开期间健康和耐力没有更新。但是当您在游戏中执行某个操作时,该值将更新为应有的数值,因为它在服务器上进行了内部跟踪。这就是我想要解决的问题。希望这样说得清楚!
除了在网上搜索并最终找到这个网站上没有一个真正“好”的答案之外,我还没有尝试过任何方法来解决这个问题,所以我决定提问。
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号