私は一連の document.evaluate を実行してから、 for ループ on を使用して各結果を反復処理していますresult.snapshotLength
。
各ループ (a thisDiv.parentNode.removeChild
) 内で同じことを行うので、ループを 1 つだけ実行したいと思います。
私はそれを読んだ:
5 番目のパラメーターを使用して、2 つの XPath クエリの結果をマージできます。document.evaluate への以前の呼び出しの結果を渡すと、両方のクエリの結合された結果が返されます。
だから私は試しました:
comDivs = document.evaluate(
"//div[@class='class name 1']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
ggDivs = document.evaluate(
"//div[@class='class name 2']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
comDivs);
しかし、これは機能しません (エラー ログはありませんが、機能しません)。
それを行う適切な方法は何ですか?異なる XPath クエリを実行して、結果をマージできますか? または、クエリ自体に正規表現または何らかの代替を渡す方法はありますか?
私が今持っているコードは次のとおりです: http://userscripts.org/scripts/review/58939
ご協力いただきありがとうございます !