1

如果笔记本电脑已暂停(笔记本电脑盖关闭/打开),是否有可靠的方法可以使用 javascript 从打开的网页中检查?

4

3 回答 3

6

我已经设法通过使用 javascript 间隔来检查已经过去了多少时间来实现这一点。如果电源被暂停,那么滴答声之间的时间差就会关闭。

  <script>
    var last = (new Date()).getTime();

    setInterval(function(){
        var current = (new Date()).getTime();
        if (current-last > 3000) {
            console.log('power was suspended');
        }
        last = current;

    }, 1000);
  </script>
于 2013-07-28T23:23:43.883 回答
4

根本没有。出于安全原因,这些是 JavaScript 不会暴露的东西 :)。与文件系统相同,尽管 File API 提供了一些功能。

看起来这个功能也可能缺乏用处,但是,如果它存在,网站可以“在你不看的时候”做一些事情,我不认为这是一件好事:)

一些人在评论中提到的 BatteryAPI 对于某些网站来说非常重要。例如,要知道是否要运行消耗资源的动画或功能,在他失去工作之前保存所有用户数据等(尤其是在智能手机和平板电脑上运行时……不仅仅是笔记本电脑)。

于 2013-07-28T22:55:43.600 回答
2

@yotam-omer 的回答并不完全正确。虽然您无法检测到合上盖子的物理动作,但您可以检测到离开页面,并使用轮询来检测连接丢失(即合上盖子)。将两者配对可用于检测未离开页面的连接丢失。

如果这听起来很有趣,请发表评论,我会添加一个示例。

于 2013-07-28T22:59:13.727 回答