如果用户不在页面上,则发出标题通知

时间:2018-11-02 10:20:51

标签: javascript angularjs

有没有一种方法可以跟踪用户是否在页面上不活跃(他打开了我们的网站,但是后来他打开了Facebook,却忘记了我们的页面)?我想在我的网站标签中给他一个闪烁的标题,以吸引他的注意力。

例如,常规标题为“预订房间”,如果他在其他选项卡中打开其他内容,我想将标题从“预订房间”更改为“您忘记预订房间”,反之亦然,大约2秒钟循环。

如果可以在AngularJS中完成,那就太好了。谢谢!

1 个答案:

答案 0 :(得分:0)

<script>
var timer = null;
function setBlurTitle(num) {
    let n = 1;
    if (num) {
        n = num;
    };
    if (n % 2 == 0) {
        document.title = "come back here";
    } else {
        document.title = "";
    };
    if (timer) {
        clearTimeout(timer);
        timer = null;
    };
    timer = setTimeout(() => {
        n++;
        setBlurTitle(n);
    }, 500);
}
function clearTitle() {
    document.title = 'normal'
    if (timer) {
        clearTimeout(timer);
        timer = null;
    }

}
window.addEventListener('blur', () => { setBlurTitle() }, false);
window.addEventListener('focus', () => { clearTitle() }, false)