2015-10-28 38 views
0

我试图从这个看起来像这样的HTML页面嵌套在div中的div class =“article”div div id =“tabs = main :从嵌套div和class中获取信息与HTML使用javascript

pastebin

我已经试过这样的事情,但没有结果:。

var targetAbs = doc.querySelectorAll("article"); 

人对我有什么秘诀甚至不知道,我想利用这个queryselector我也有尝试getElementsByClassName,但我认为,因为它嵌套我可以r每个它。

回答

2

doc不是浏览器提供的标准变量。您正在寻找document

等级选择器以.开头。 "article"是一个类型选择器,将匹配<article>元素。

+0

好的,但在我的程序文件中已被声明为doc。这就是我写文档的原因。 我不明白你的意思与最后一部分。我在div =“tabs-main”里面寻找class =“article”,或者至少我认为它在div里面。 我不应该使用queryselector或者? – anderssinho

+0

@anderssinho - 你需要在选择器的前面放一个'.',把它变成一个类选择器。 – Quentin

1

当你的元素有一类article,则需要使用下面的代码:

doc.querySelectorAll(".article"); 

您需要将一个.在选择面前时,它指的是一类。

+0

好的,它只是寻找一个叫做“文章”的类,还是会找到一个名为“article-info cf”的类? 如果它只是返回文章类,我如何提取信息并将其放入一个字符串?因为我猜我不只是获取内容,而只是元素本身或?这真的是我追求的。 如何使它成为一个字符串? – anderssinho

+0

不,它不会匹配一个名为'article-info cf'的类(这是两个不同的类,因为有一个空格:它有'article-info'类和'cf'类)。要从元素中获取文本,您需要执行'doc.querySelector(“。article”)。innerHTML'。我使用'querySelector'而不是'querySelectorAll'的原因是因为我们只想要一个'article'元素。 –

+0

好吧,很高兴知道! 如果我现在在querySelector上使用innerHTML并将其存储在如下变量中: var targetAbs = doc.querySelectorAll(“。article”)。innerHTML; 该变量是否会保存所有的信息? – anderssinho