Javascript 在两个不同的功能中更改文档标题
我有一个函数,可以在有通知时更改文档标题,然后返回到原始标题。这很好,当有任何通知时,它会将标题更改为Javascript 在两个不同的功能中更改文档标题,javascript,jquery,document,title,Javascript,Jquery,Document,Title,我有一个函数,可以在有通知时更改文档标题,然后返回到原始标题。这很好,当有任何通知时,它会将标题更改为(1)Foo,然后返回到Foo var original_title = $('title').text(); (function getnotifications() { $.ajax({ dataType: "json", url: "foo.com/query_notifications.php?ajax=1", cache: false, asyn
(1)Foo
,然后返回到Foo
var original_title = $('title').text();
(function getnotifications() {
$.ajax({
dataType: "json",
url: "foo.com/query_notifications.php?ajax=1",
cache: false,
async: true,
success: function(data){
var total_notifications = data.total_notifications;
if(total_notifications > 0) {
document.title = ("("+total_notifications+")" + original_title);
} else {
document.title = original_title;
}
}
});
setTimeout(getnotifications, 5000);
}());
我还有一个函数,可以在动态单击链接时加载新内容,然后根据加载的内容更改document.title。因此,加载新内容,然后将Foo
更改为Bar | Foo
var original_title = $('title').text();
(function getnotifications() {
$.ajax({
dataType: "json",
url: "foo.com/query_notifications.php?ajax=1",
cache: false,
async: true,
success: function(data){
var total_notifications = data.total_notifications;
if(total_notifications > 0) {
document.title = ("("+total_notifications+")" + original_title);
} else {
document.title = original_title;
}
}
});
setTimeout(getnotifications, 5000);
}());
但是,我的通知功能仍在使用Foo
,并将文档。title
更改为(1)Foo
,即使在通知消失后,它仍然显示Foo
if(!e.isTrigger) {
if(history.pushState) {
if(dash_switch == '') {
history.pushState(null, null, '/');
document.title = 'Foo';
var original_title
} else {
history.pushState(null, null, '/' + dash_url + '/' + dash_switch + '');
document.title = '' + ucwords(dash_switch) + ' | Foo';
var original_title = '' + ucwords(dash_switch) + ' | Foo';
}
} else {
if(dash_switch == '') {
location.hash = '/';
document.title = 'Foo';
var original_title
} else {
location.hash = '/' + dash_url + '/' + dash_switch + '';
document.title = '' + ucwords(dash_switch) + ' | Foo';
var original_title = '' + ucwords(dash_switch) + ' | Foo';
}
}
}
我如何获得通知停留Bar | Foo
?我试着把
$('title').text()放进去代码>进入通知功能,但这只是一遍又一遍地执行(1)(1)(1)
。
我尝试在新的内容加载函数中更改var,但var的原始标题没有更改。你也可以粘贴其他函数吗?@GonrasKarols我不喜欢。它太长了(大约600行),没有提供任何见解,否则我会包括在内。该函数的要点是,它检查链接的点击事件,并通过ajax在div中加载新内容,执行history.pushstate更改url,并根据加载的内容更改document.title。直截了当。您是否在将标题更改为Bar | Foo
后立即尝试更改原始标题?因为它是在全局范围内声明的。。。应该可以。在你刚才添加的代码部分。。。您重新声明了原始标题
。删除此变量前面的所有var
,除了全局范围内的第一个变量。lol。。。阅读更多关于。知识的获得往往是痛苦的