如何获取元素的文本节点?

2022-08-30 04:50:20
<div class="title">
   I am text node
   <a class="edit">Edit</a>
</div>

我希望获得“我是文本节点”,不希望删除“编辑”标签,并且需要跨浏览器解决方案。


答案 1
var text = $(".title").contents().filter(function() {
  return this.nodeType == Node.TEXT_NODE;
}).text();

这将获取所选元素的 ,并对其应用筛选器函数。filter 函数仅返回文本节点(即具有 )contentsnodeType == Node.TEXT_NODE


答案 2

您可以使用以下命令获取第一个子节点的节点值

$('.title')[0].childNodes[0].nodeValue

http://jsfiddle.net/TU4FB/