首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从一系列数据中提取imacros

从一系列数据中提取imacros
EN

Stack Overflow用户
提问于 2015-07-03 12:27:38
回答 1查看 160关注 0票数 5

嗨,这是我的页面的样子

代码语言:javascript
复制
  <div class="Bango 1 Beamer Beamer-1"> Beamer </div>
  <div class ="menu1"> menu1 </div>
  <div class ="menu2"> menu2 </div>
  <div class ="menu3"> menu3 </div>
  <div class ="menu4"> menu4 </div>

 <div class="Bango 1 Beamer Beamer-2"> Beamer2 </div>
 <div class ="menu1"> menu21 </div>
 <div class ="menu2"> menu22 </div>
 <div class ="menu3"> menu23 </div>
 <div class ="menu4"> menu24 </div>

 <div class="Bango 1 Beamer Beamer-3"> Beamer3 </div>
 <div class ="menu1"> menu31 </div>
 <div class ="menu2"> menu32 </div>
 <div class ="menu3"> menu33 </div>
 <div class ="menu4"> menu34 </div>

如何仅提取Beamer-1下的元素?注意:此组下的元素数量也可能随时间而变化。谢谢

EN

回答 1

Stack Overflow用户

发布于 2015-07-03 16:57:33

我建议使用一些伪URL来解决这个问题:

代码语言:javascript
复制
' get bounds
URL GOTO=javascript:{var<SP>doc=window.document;var<SP>els=doc.getElementsByTagName("div");for(i=0;i<els.length;i++){var<SP>b=(els[i].outerHTML.match("Beamer-1"))<SP>?<SP>(i+1)<SP>:<SP>b;var<SP>e=(els[i].outerHTML.match("Beamer-2"))<SP>?<SP>i<SP>:<SP>e;}}
' set extract
URL GOTO=javascript:{var<SP>ext="";for(i=b;i<e;i++){ext+=els[i].innerHTML.trim()+((i==e-1)<SP>?<SP>""<SP>:<SP>"[EXTRACT]");}underfined;}
' create dummy element
URL GOTO=javascript:{var<SP>elt=doc.createElement("input");elt.type="hidden";elt.id="myHiddenExtract";elt.value=ext;doc.getElementsByTagName("html")[0].appendChild(elt);underfined;}
' get extract
TAG POS=1 TYPE=INPUT ATTR=ID:myHiddenExtract EXTRACT=TXT
' remove dummy element
URL GOTO=javascript:{doc.getElementsByTagName("html")[0].removeChild(doc.getElementById("myHiddenExtract"));underfined;}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31198474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档