窗口处于活动状态时执行脚本

时间:2017-10-16 18:04:51

标签: javascript jquery

如何只在浏览器标签/窗口处于活动状态时执行此功能一次?

$(function(){

noty({text:'Here is my text',type:'error'});

return false;
});

如果我使用:

$(window).one('focus', function(){

该功能已执行,但仅当我离开标签并再次返回时。

有什么想法吗?

非常感谢

2 个答案:

答案 0 :(得分:0)

你的意思是'是活跃的' ?

如果您需要在加载后一次调用此函数,则可以使用load事件或ready使用jquery。

如果每次选项卡处于活动状态时都是如此,那么当您的用户位于选项卡上并且鼠标对焦于您的文档时,您可以使用focus事件。

let activated = false;
window.addEventListener('focus', function() {
    if(!activated) {
        console.log('test');
        activated = true;
    }
})

答案 1 :(得分:0)

如果您使用加载事件,则会在加载页面时触发。

$(document).ready(() => {
  $(window).on('load', () => {
    noty({ text: 'Here is my text', type: 'error' });
  });
});