0
(function($){

    $(window).focus(function(){
        document.title = 'focused';
    });

    $(window).blur(function(){
        document.title = 'not focused';
    });

})(jQuery);

它应该做什么:如果一个标签是焦点,标题应该是“焦点”;如果不是,那么标题应该是“不集中”。

它在现实中所做的事情:在让标签不聚焦后,它的标题将永远保持“不聚焦”。

这在 Firefox 中运行良好,但在 Chrome 中不行,有人有建议吗?谢谢!

4

2 回答 2

0

查看答案,您可以轻松修改该代码以完成您在此处概述的任务。

于 2013-07-20T01:30:15.007 回答
0

这实际上是Chrome 的一个报告错误,它发生在版本 29 中,当您在选项卡之间切换时。尽管document.title已正确填写,但这似乎是一个不会更新选项卡标题的竞争条件。

上面代码的一个可能的解决方法是创建一个计时器来再次更改标题。以下代码有效,但您也可以在计时器函数中设置文本。

(function($){

$(window).focus(function(){
    document.title = 'focused';
});

$(window).blur(function(){
    document.title = 'not focused';

    window.setTimeout(function () {
        var temp = document.title;
        document.title = temp + "_";
        document.title = temp;
    }, 200);
});

})(jQuery);
于 2013-08-22T16:01:04.953 回答