代码之家  ›  专栏  ›  技术社区  ›  balpha

聚焦窗口时更改窗口标题在Chrome中不起作用

  •  11
  • balpha  · 技术社区  · 14 年前

    我(ab)使用文档标题作为某种通知区域。如果在我想通知用户某件事时,有问题的选项卡/窗口没有焦点,我会更改窗口标题以包含一些通知。

    当我从一个 不同的窗口 同一窗口中的不同选项卡

    我已经找到了一个解决方法(我会把它作为一个答案发布),但请分享任何其他想法,你可能要解决这个问题。

    3 回复  |  直到 14 年前
        1
  •  14
  •   balpha    14 年前

    这似乎是Chrome中关于标签标题的实际重画的一个bug,因为文档标题本身(即DOM中的)实际上是正确更新的。

    我假设更改选项卡(这会导致选项卡移到前台,因此需要重新绘制)和更改结果焦点事件中的标题(这也需要重新绘制)会导致某种竞争条件。

    window.setTimeout(function () { $(document).attr("title", newtitle); }, 200);
    

    –只需等待一小段时间,然后再更新标题,这样两个重画事件就不会相互冲突。这显然不太好,但是0.2秒的延迟通常不成问题。

        2
  •  1
  •   tn4foxxah    12 年前

    balpha提供的解决方案也适用于我-但是请注意,不要将文档标题设置为焦点上的新标题,而不是等待200毫秒再次设置它-这将不起作用(可能是因为Chrome认为它是同一个标题,所以不会更新)

    只需等待200毫秒,并设置它-工作正常!

        3
  •  0
  •   tiftik    12 年前

    供将来参考:此错误目前已修复。