如何定位元素而不是其嵌套元素?
例如,我不想更改嵌套在<span>
<h1>
中的文字
HTML:
<h1>Change me <span> Don't change me</span></h1>
<h1>Change me <span> Don't change me</span></h1>
jQuery的:
$("h1:first").text('Changed');
所以结果应该是:
<h1>Changed <span> Don't change me</span></h1>
<h1>Change me <span> Don't change me</span></h1>
答案 0 :(得分:2)
答案 1 :(得分:1)
$("h1:first").contents().filter(function() {
return this.nodeType == 3;
}).replaceWith('foo');
alert($("h1:first").html());
它的作用:
.contents()
返回元素的所有子元素.filter(...)
仅保留文本节点.replacewith()
用某些文字替换文本节点