我正在尝试删除文本节点“ one”。

$ targetDiv是jQuery对象

$targetDiv[0].outerHTML
<div><div>one<font face="Impact" size="4">www</font></div></div>

$targetDiv[0].innerHTML
<div>one<font face="Impact" size="4">www</font></div>


我可以删除另一个文本节点“ www”,如下所示:

$targetDiv.find("font").each(function ()
{
   if (this.firstChild.nodeType === 3)
   {
       this.firstChild.data = "";
   }
});


但是很难删除“一个”部分。

$targetDiv[0].firstChild
<div>

$targetDiv[0].firstChild.data
undefined

$targetDiv[0].firstChild.innerText
undefined

$targetDiv[0].firstChild.innerHTML
"one<font face="Impact" size="4">www</font>"

$targetDiv[0].firstChild.innerText
undefined

$targetDiv[0].firstChild.textContent
"onewww"

最佳答案

尚不清楚它在什么上下文中,或者是$targetDiv,但是根据得到的结果,我们可以假设您使用的是Firefox,并且$targetDiv是第一个div,并且应该可以使用

$($targetDiv.find("div").get(0).firstChild).remove();


FIDDLE

09-07 15:48