JavaScript(greasemonkey)内でXPathを使う方法
<div class="message">〜</div>という要素にアクセスする場合は以下のように書く。
var div = document.evaluate('//div[@class="message"]', document.body, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); for (i=0; i<div.snapshotLength; i++) { str = div.snapshotItem(i).innerHTML str = str.replace(/^(ttp:\/\/.*?)(<br>)/ig, "<a href=\"h$1\">$1</a>"); div.snapshotItem(i).innerHTML = str; }これで、XPathが利用出来る。
document.evaluate('XPath', 起点となるノード, 名前空間, 返値のタイプ・型, 結果をどうするか);JavaScript(greasemonkey)内でXPathを使う方法 - 午前0時の憂鬱
- 起点となるノード:大体documentでいい。〜などが必要なければ、document.bodyなどにする。
- 名前空間:通常はnullで良さそう
- 返値の型:ループするなら型はORDERED_NODE_SNAPSHOT_TYPEが良さそう
- 結果をどうするか:nullにすると新しいXPathResultオブジェクトが生成される。既存のオブジェクトを使うならそれを指定。nullにしとけば良さそう。