2016-02-23 53 views
0

第一个子节点我用下面的代码网站:获取使用Internet Explorer COM对象

<div id="past"> 
 
<div data-rollid="99999" class="ball kugel-2">2</div> 
 
<div data-rollid="99998" class="ball kugel-2">2</div> 
 
<div data-rollid="99997" class="ball kugel-2">2</div>

我想这个数字“2”。我知道我可以通过
past := wb.document.getElementById("past")
拾取“过去”,但如何从第一个子节点获取值?

+0

你真的应该尝试解释你做了什么,你尝试了什么,以及你得到了什么结果。我的帖子中没有看到很多AHK代码?你知道'.innerText'用于检索AHK中的InnerHTML吗? – PGilm

+0

@PGilm当我看到这个问题是关于JavaScript而不是autohotkey,对吗? – 2501

+0

.innerText不是专用于AHK,而是与.innerHTML不一样(都可在COM对象中使用,并且可以使用AHK访问)。只是说。 – Forivin

回答

0

你不给了很多的工作,但你可以尝试,为先 “undertag”:

wb.Document.getElementByID("past").childnodes.item[0].innerText 

对于第二个 “undertag”:

wb.Document.getElementByID("past").childnodes.item[1].innerText 

等。

否则,看是这样的:

wb.document.body.querySelector("data-rollid='99998']").innerText; 

wb.document.getElementByID("past").querySelector("data-rollid='99998']").innerText; 

甚至

wb.document.getElementByID("past").childnodes.querySelector("data-rollid='99998']").innerText; 

可能工作(你可能要玩的语法)。 。 。

H个,

0

这可以让你某一类的所有元素:

elements:=ie.document.getElementsByClassName("ball kugel-2") 

或者,你可以这样做:

past:= wb.document.getElementById("past") 
children:=past.children 
while(a_index <= children.length, i:=a_index-1) 
    msgbox, % children[i].innertext 
相关问题