Sleipnir2スレ
- 49 :l ★:2007/06/02(土) 10:22:18 ID:???
- AutoPagerizerらしきもの
せっかくXPathが使えるようになったので、作ってみた。
window.onscrollでページの末尾近くまでスクロールしたことを検知して処理を実行させる。
ブラウザ側のJavaScriptで動作するかよく分からなかったので、>>25の方法を利用してスクリプトコントロールを常駐させる。
JavaScriptがOFFでも動作するのがよろしい。
nextLinkのhrefを取得しようとしたら、URLが勝手にデコードされて、なぜか文字化けしやがる。
encodeURI()しても正しく再エンコードできない。
「goungoun blog. ≫ Blog Archive ≫ getAttribute href、MSIE6が勝手にURLデコードする問題?(http://goungoun.dip.jp/app/blog/index.php/2006/08/27/19/)」に対策が載っていた。
この方法では、ソースに記述された生のURLが得られるが、相対パスの場合もあるのが難点。
以前作ったURLモジュールのbuild()メソッドで結合すればよい。
片方がサーバルートからのパスだったときに正しく動作しないことに気付いたので修正した。
取得したHTMLもなぜか文字化けする。
HTTPモジュールの自動文字コード変換が適当だったのが原因らしい。
ADODBの適当な判別に任せず、真面目にレスポンスヘッダやmetaタグからcharsetを取得するようにしたらまともになった。
取得したHTMLから表示する部分と次ページへのリンクを抽出する部分は、ActiveXObject('htmlfile')を利用する。
とりあえず、はてなブックマークのエントリリストで試してみたところ、それなりに動作しているようだった。
http://swdyh.infogami.com/autopagerizeの定義情報を取得してスクリプトを生成できるようにしようかと思ったが、面倒なんでやめた。
定義情報に書いてあるURLパターンがSeaHorseのincludeに互換性があるかどうか怪しいし。
投稿ファイル名: AutoPagerizer.zip
http://lukewarm.s151.xrea.com/b/file/1163165308_49.zip
サイズ: 16650 bytes
57KB
0ch BBS 2005-10-08