我建议:
$('#relatedinfo ul li a').html(function(index,html){
return html.replace(/<\/span>(\:)/,'');
});
甚至可以这样:
$('#relatedinfo ul li a').text(function(index,text){
return text.replace(':','');
});
一种更新的方法是检查中最后一个字符是否属于['?', '!', '.']
数组,如果是,则从nextSibling的nodeValue中删除:
:
$('#relatedinfo ul li a span').text(function(index,text){
var lastchar = text.split('').pop();
if (['?','!','.'].indexOf(lastchar) > -1) {
this.nextSibling.nodeValue = this.nextSibling.nodeValue.replace(':','');
}
});
参考资料:
你也可以使用正则表达式:
var rx = new RegExp('(?![^<&]+[>;])' + searchString, 'gi');
$('#relatedinfo').html(function (i, html) {
return html.replace(rx, '<b>$&</b>')
});