Javascript 使用jquery更改页面标题,但不增加标题

Javascript 使用jquery更改页面标题,但不增加标题,javascript,jquery,Javascript,Jquery,我正在尝试更新用户所在的页面标题,以添加他们当前的通知数量(就像facebook一样) 我有这个: var current_page_title = $(document).find("title").text(); document.title = '(' + data.title_total + ') ' + current_page_title; 问题是,它一直在这样做: “(12)(12)页面标题”-每次添加括号编号 是否有一种方法可以始终使用原始标题,而不是已经有括号的新标题?您可以

我正在尝试更新用户所在的页面标题,以添加他们当前的通知数量(就像facebook一样)

我有这个:

var current_page_title = $(document).find("title").text();
document.title = '(' + data.title_total + ') ' + current_page_title;
问题是,它一直在这样做: “(12)(12)页面标题”-每次添加括号编号


是否有一种方法可以始终使用原始标题,而不是已经有括号的新标题?

您可以将标题的原始值保存在代码块之外,在代码块中进行更改,然后添加到代码块中

var pageTitle;

var current_page_title = document.title
                     //  ^ btw, no need for $(document).find("title").text() here
if ( !pageTitle ) { pageTitle = current_page_title; }
document.title = '(' + data.title_total + ') ' + pageTitle;

每次都要重新编排。不要盲目地附加到当前标题

你可以缓存当前的标题并附加它

var title = document.title;

// later
document.title = ... + title;
document.title='('+data.title\u total+)'+document.title.replace(/\(*\)/,'')


用@serdar.sanri的答案编辑,第一次工作

看这个例子,我用正则表达式得到括号中的值。 试着用标题来做


$(函数(){
var值=$(“#title”).val();
var newValue=value.replace(/([\[(])(.+?)([\]]))/g,replace);
$(“#newTitle”).val(newValue);
});
函数替换程序(匹配、v1、v2、v3、偏移量、字符串){
返回v1+(1+parseInt(v2))+v3;
}

您可以存储原始页面中的内容,也可以编写正则表达式来删除不需要的部分……我不知道它们将出现在哪个页面上,我不想为每个页面标题都编写JS代码,我想使用当前标题;)在我写完我的之前就贴了。简洁明了的回答。
document.title='('+data.title\u total+)'+document.title.replace(/\(\d++\)+\s/,'')
<input type="text" name="title" id="title" value="(12) lorem ipsum" />
<input type="text" name="newTitle" id="newTitle" value="" />

$(function(){
  var value    = $("#title").val();
  var newValue = value.replace(/([\[(])(.+?)([\])])/g, replacer);

    $("#newTitle").val(newValue);
});

function replacer(match, v1, v2, v3, offset, string) {
  return v1 + (1+parseInt(v2)) + v3;
}