[英]Simple HTML DOM how to access the elements at the top level only
我陷入了主題問題。 這是示例代碼:
include('./simple_html_dom.php');
$html = str_get_html("
<cols>
<br>
<col>
content1
<br>
content1
</col>
<br>
<col>
<br>
content2
<br>
content2
</col>
<br>
</cols>
");
foreach($html->find('cols br') as $br) { echo $br->outertext; }
這給了我<cols>
標記內的所有<br>
標記,但是我只需要頂層的<br>
。
$html->find('cols > br')
也不起作用(
更新解決此問題:
foreach($html->find('cols') as $cols_tag_content) {
for($node = 0; $node < count($cols_tag_content->children()); $node++) {
if($cols_tag_content->children($node)->tag == "br") {
//doing whatever you want with br. i just remove it
$cols_tag_content->children($node)->outertext = "";
}
}
}
這適用於<br>
和<br />
foreach($html->find('cols') as $cols_tag_content) {
for($node = 0; $node < count($cols_tag_content->children()); $node++) {
if($cols_tag_content->children($node)->tag == "br") {
//doing whatever you want with br. i just remove it
$cols_tag_content->children($node)->outertext = "";
}
}
}
您是否嘗試過'cols> br'? 我認為'cols> br' 可能會把它扔掉。
另請參閱http://www.w3schools.com/css/sel_element_gt.asp,以獲取更多信息。
我認為jQuery允許間隔。
更新
我將上面的偽HTML重組為將div與以下類一起使用:
<div class="cols">
<br />
<div class="col">
content1
<br />
content1
</div>
<br />
<div class="col">
<br />
content2
<br />
content2
</div>
<br />
</div>
現在執行以下jQuery腳本即可:
var brs= $('div.cols > br');
alert("Found "+brs.length+" brs");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.