이 방법은 jQuery를 사용하는 것이 가능하지만 어떻게 QueryPath에서 수행 할 수 있습니까? 그렇지 않으면QueryPath를 사용하여 HTML 주석을 선택할 수 있습니까?
Selecting HTML Comments with jQuery
, 누구나 의견을 선택할 수있는 HTML 파서를 제안 할 수 있습니다?
이 방법은 jQuery를 사용하는 것이 가능하지만 어떻게 QueryPath에서 수행 할 수 있습니까? 그렇지 않으면QueryPath를 사용하여 HTML 주석을 선택할 수 있습니까?
Selecting HTML Comments with jQuery
, 누구나 의견을 선택할 수있는 HTML 파서를 제안 할 수 있습니다?
QueryPath에는 여러 추가 기능 메서드가있는 QPXML
이라는 확장명이 있습니다. 이 중 하나는 comment()
입니다.
단순히 스크립트에 포함,이 기능을 사용하려면
include 'QueryPath/QueryPath.php';
include 'QueryPath/Extensions/QPXML.php';
htmlqp($html, $selector)->comment();
이 현재 선택된 노드 (들)에 부착 된 최초의 주석을 검색합니다. 이것은 조금 이보다이다
$nodes = $qp->get();
foreach ($nodes as $node) {
foreach ($node->childNodes as $child) {
if ($child->nodeType == XML_COMMENT_NODE) {
// $child is a comment.
print $child->textContent;
}
}
}
을하지만, 하나 개의 요소는이 경우에 더 나은 액세스를 제공합니다 : 당신이 모두 동일한 노드에서 코멘트 정말 정교한 세트가있는 경우
, 당신은 이런 식으로 뭔가를 할 수 그것에 대한 많은 의견.
는 querypath를 통해 HTML 페이지의 모든 의견을 효율적으로 활용하려면 다음
function getAllComments($node) {
if ($node->hasChildNodes()) {
foreach ($node->childNodes as $child) {
$this->getAllComments($child);
if ($child->nodeType == XML_COMMENT_NODE) {
echo $child->textContent;
}
}
}
}
$html = $qp->get() ;
getAllComments($html[0]);
감사합니다! 나는 그것을 필요로 할 때 QP 메일 링리스트 방식으로 요청해야만했다. 운좋게도 해결 방법을 찾았다. :) –
QPXML을 작동 시키려면'\ QueryPath :: enable ('\ QueryPath \ Extension \ QPXML');'을 수행해야했습니다. –