我试图在div中找到一个特定的字符并将其包装在span
标记中。
我以为我可以使用类似的东西:
$('.breadcrumb:contains("»")').replaceWith('<span>»</span>');
但这改变了整个breadcrumb div。
我究竟做错了什么?
.replaceWith
仅适用于节点。你需要字符串方法.replace()
:
var $bc = $('.breadcrumb');
$bc.html($bc.text().replace('»', '<span>»</span>'));
像Craver先生建议的那样,你也可以打电话:
$bc.html(function(i, html) {
return html.replace('»', '<span>»</span>');
});
var $bc = $('.breadcrumb');
$bc.html($bc.text().split('»').join('<span>»</span>'));
更好地替换所有字符。