未选中时如何动态更改选项卡标题?
How to dynamically change tab title when it is not selected?
我想在浏览器中 javascript 游戏 运行 的 window 选项卡中显示动态信息(分数)(chrome):我的目标是运行 不同选项卡中的多个游戏实例,运行 并行,并且能够在选项卡标题中查看当前分数。我试过了:
document.title = 得分
...但它仅在选定的选项卡中有效,另一个选项卡在选定之前不会刷新(尽管游戏 运行在后台运行良好)。
==> 有没有办法强制更新选项卡标题...即使没有选择?
我在 http://whosebug.com 上发现了几个相同的问题,但它们对我不起作用。
您可以在这里找到您的解决方案:http://www.raymondcamden.com/2010/10/19/Using-JavaScript-to-update-the-browser-window-title-when-the-user-is-away
所以,基本上那种代码可以工作:
var focused = true;
var baseTitle = "";
var chatsMissed = 0;
//I'm the fake function that represents some process. We randomly determine if a new chat happened
function fakeStuff() {
if(Math.random() > 0.5) {
if(!focused) {
chatsMissed++;
window.document.title = baseTitle + " ("+chatsMissed+")";
}
}
}
$(document).ready(function() {
//store the base title
baseTitle = window.document.title;
//When the window is focused...
$(window).focus(function() {
focused = true;
// window.document.title = baseTitle;
//chrome bug: http://heyman.info/2010/oct/7/google-chrome-bug-when-setting-document-title/
setTimeout(function() {
document.title = baseTitle;
}, 100);
chatsMissed = 0;
});
//When the window is blurred...
$(window).blur(function() {
focused = false;
});
//setup a process
window.setInterval('fakeStuff()',2000);
})
很遗憾,JSfiddle 不支持更改标题。但是我测试过,确实有效。
我想在浏览器中 javascript 游戏 运行 的 window 选项卡中显示动态信息(分数)(chrome):我的目标是运行 不同选项卡中的多个游戏实例,运行 并行,并且能够在选项卡标题中查看当前分数。我试过了:
document.title = 得分
...但它仅在选定的选项卡中有效,另一个选项卡在选定之前不会刷新(尽管游戏 运行在后台运行良好)。
==> 有没有办法强制更新选项卡标题...即使没有选择?
我在 http://whosebug.com 上发现了几个相同的问题,但它们对我不起作用。
您可以在这里找到您的解决方案:http://www.raymondcamden.com/2010/10/19/Using-JavaScript-to-update-the-browser-window-title-when-the-user-is-away
所以,基本上那种代码可以工作:
var focused = true;
var baseTitle = "";
var chatsMissed = 0;
//I'm the fake function that represents some process. We randomly determine if a new chat happened
function fakeStuff() {
if(Math.random() > 0.5) {
if(!focused) {
chatsMissed++;
window.document.title = baseTitle + " ("+chatsMissed+")";
}
}
}
$(document).ready(function() {
//store the base title
baseTitle = window.document.title;
//When the window is focused...
$(window).focus(function() {
focused = true;
// window.document.title = baseTitle;
//chrome bug: http://heyman.info/2010/oct/7/google-chrome-bug-when-setting-document-title/
setTimeout(function() {
document.title = baseTitle;
}, 100);
chatsMissed = 0;
});
//When the window is blurred...
$(window).blur(function() {
focused = false;
});
//setup a process
window.setInterval('fakeStuff()',2000);
})
很遗憾,JSfiddle 不支持更改标题。但是我测试过,确实有效。