从document.querySelector()

时间:2017-01-20 02:53:49

标签: javascript css-selectors

enter image description here

我想提取字符串" (2017/01/15 12:27:59)",我如何找到它? 我尝试了#34; document.querySelector(" div.aaa")。innerText",但它也提供了span.bbb和span.ccc中的文本。 任何的想法?感谢。

3 个答案:

答案 0 :(得分:1)

您似乎要寻找的是跨度之后的文本节点。 nextSibling 属性应该适合,但我认为某些浏览器只返回元素兄弟,而不是其他类型的节点。请参阅MDN:Node.nextSibling

无论如何,请尝试以下方法:



var cccSpan = document.querySelector('.ccc');
var textNode = cccSpan.nextSibling;
console.log(textNode.data);

.aaa {color: red;}
.bbb {color: blue;}
.ccc {color: green;}

<div class="aaa">the div aaa
  <span class="bbb">span bbb</span>
  <span class="ccc">span ccc</span>
  text after ccc
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

document.querySelector(".aaa").lastChild.textContent.trim()

lastChild将获取textNodes和elementNodes。

答案 2 :(得分:0)

您可以使用嵌套类选择器:

document.querySelector(".aaa .ccc").innerHTML