Javascript 活动页面事件侦听器

Javascript 活动页面事件侦听器,javascript,html,dom,javascript-events,Javascript,Html,Dom,Javascript Events,我正在计划开发一个浏览器插件。一般的想法是要有一个计时器来记录用户在每个站点上花费的时间(如果您花费的时间超过X,则会发出警告) 在页面加载不是很正确-据我所知,这将记录从页面加载直到关闭。如果你打开了多个选项卡,当你没有实际查看网站时,它将记录为“花费的时间”。 问题1。请让我知道我是否正确 理想情况下,我要寻找的是来自浏览会话(HTML)的“actice document”事件侦听器 问题2。这可能吗?我该怎么做 如能就替代方法提出建议,将不胜感激 有$(window).focus和.blu

我正在计划开发一个浏览器插件。一般的想法是要有一个计时器来记录用户在每个站点上花费的时间(如果您花费的时间超过X,则会发出警告)

在页面加载不是很正确-据我所知,这将记录从页面加载直到关闭。如果你打开了多个选项卡,当你没有实际查看网站时,它将记录为“花费的时间”。 问题1。请让我知道我是否正确

理想情况下,我要寻找的是来自浏览会话(HTML)的“actice document”事件侦听器 问题2。这可能吗?我该怎么做

如能就替代方法提出建议,将不胜感激

有$(window).focus和.blur函数,您可以使用它们计算时间:

$(window).focus(function() {
    //your code
});
$(window).blur(function() {
    //your code
});

只有当用户使用您的网站时,时间才会被计算在内,而不仅仅是当用户在其浏览器选项卡中打开网站时。

谢谢您的回答。我一直在探索,这似乎是一个粗略的解决方案。我正在开发的应用程序sit=作为浏览的一个附加组件,主要是为了提高效率。必须对每个访问过的网页进行人工聚焦和模糊,这似乎有点不雅观。虽然这和页面可见性API似乎是实现这一点的唯一方法。如果您想要更优雅的解决方案,您可以通过window.onfocus和window.onblue在纯JS中实现——但我上面发布的jQuery函数的实现可能是相同的。祝你好运!