我想这很容易,但是我对此并不陌生,被困住了。我想遍历网页的某些ElementId以提取其中的文本。
我正在寻找的ElementId像这样:
“” p000“,” p001“,” p002“等(我想它会一直到” p999“)]
这是我到目前为止所拥有的。
var totalText=[]
while(text===""):
var text=document.getElementById("p0003");
totalText.push(text);
}
现在,我想遍历所描述的ElementId,并在文本为空时立即停止,这意味着不再有元素“ p091”,并且循环停止并且直到“ p999”才继续。
我希望你能明白我的意思。我将不胜感激!
这将有助于获取所有元素并遍历它们!
var arrayofelements = [];
function getElements(){
var lenght=document.getElementsByTagName("div").length;
for(var a = 0;a <= lenght; a++){
var text = document.getElementById("p"+a);
if(text == undefined || text == null){
return;
}
arrayofelements.push(text.innerHTML);
}
}
getElements();
arrayofelements.forEach(foreachfunc);
function foreachfunc(item,index){
document.write("Array Data: "+item);
}
<div id="p0">0</div>
<div id="p1">1</div>
<div id="p2">2</div>
<div id="p3">3</div>
<div id="p4">4</div>
<div id="p5">5</div>
var totalText=[]
while(text===""):
if(text === ""){
break;
}
var text=document.getElementById("p0003");
totalText.push(text);
}
这样的事情。我从您的问题中了解到,您想在发现空条目后立即停止while循环。
您可以为每个元素添加一个类(从p000到p999)。然后使用document.getElementsByClassName()
。查询DOM是一项昂贵的操作,因此最短的时间通常是个好主意。另外,document.getElementsByClassName()
执行您想要的逻辑。
这里举个例子:
var paragraphs = Array.from(document.getElementsByClassName('info-para'));
console.log(paragraphs);
<p class="info-para" id="p0">0</p>
<p class="info-para" id="p1">1</p>
<p class="info-para" id="p2">2</p>
<p class="info-para" id="p3">3</p>
<p class="info-para" id="p4">4</p>