在父div中获取文本

时间:2014-08-06 13:54:23

标签: javascript html string dom

我正在尝试从元素中获取文本,该元素不是字符串的第一个父元素。即。

<div id="wrp">
    <h1>
        <a href="www.something.com">this is the text I want</a>
    </h1>
</div>

让我说我得到了element=document.getElementById("wrap")的div父母,现在我想得到它的最终文本,而不是查看它的所有孩子:h1a。只是我在网站上看到的文字。

有可能吗?请给我举个例子。

2 个答案:

答案 0 :(得分:1)

您可以同时使用innerTexttextContentinnerText doesn't works on Firefox。所以,一个crossbrowser解决方案:

var text = element.innerText || element.textContent;

JSBinInteresting comparision about them

答案 1 :(得分:0)

你想链接你的查询,以便在得到包装div后获得锚标记(假设你永远不会在锚标记内添加更多的div,这有点奇怪):

var wrap = document.getElementById("wrap");
var text = wrap.getElementsByTagName("a")[0].innerHTML;

如果您查看Mozilla文章,它会提供更多有关如何执行此操作的示例。或者有textContent但是因为你声明可以在以后添加更多元素,如果他们也有文本,那么你最终需要重构:

var wrap = document.getElementById("wrap");
var text = document.getElementById("wrap").textContent;