oAutoPagerize ver 1.1

Opera9.5xへの最適化など細かい調整ばかりです。
更新はoAutoPagerize - 0xFFからどうぞ。

なお、現在macbookが故障したままでSafariでの確認が出来ないためSafari版は更新していません。たぶん問題ないと思うのですが、後で確認・対応します。

修正点

そのほか、本家の仕様にあわせて、SITEINFOファイルをSITEINFOのurlの長さでソートしておくようにしました。

oAutoPagerize ver 0.4.2 Safari用バグFIX

コメントで指摘いただいた通り、Safari3.1で3ページ目でoAutoPagerizeが止まってしまう現象が起きていたので、その修正を行いました。Opera版に直接の影響はありません(が、更新はしてます)。

更新はoAutoPagerize - 0xFFからどうぞ。

バグの内容は、URLを絶対パスに変換する際に現在のURLを使ってしまっていたことが原因で同じページを読み込んでしまうというものでした。ケアレスミスです。すみません。。

2008/4/7 18:58 追記:ファイルをアップするのを忘れてました>< 申し訳ございません。。そして、nevilさんご指摘ありがとうございました。

oAutoPagerizeのGoogleイメージ検索対応 oAutoPagerize ver 0.4.1

風柳亭: AutoPagerize/AutoPagerlike:Google イメージ検索への対応を試みるを見たところに、コメントでGoogle画像検索対応をお願いされたので、対応してみました。
更新はoAutoPagerize - 0xFFからどうぞ。

SITEINFOを工夫して、本体にはほとんど手を入れずに動くようにしてみました。

,{
url:           'http://images\\.google\\..+/images\\?.+'
,nextLink:     'id("nn")/parent::a'
,pageElement:  '//table[tbody/tr/td/a[starts-with(@href,"/imgres")]]'
,exampleUrl:   'http://images.google.com/images?gbv=2&hl=ja&safe=off&q=%E3%83%9A%E3%83%BC%E3%82%B8'
}

nextLinkの書き換え部分については風柳亭さんのコードを参考にさせていただきました。

if (/^http:\/\/images\.google\..+\/images\?.+/.test(location.href)) (function(){
	//via http://furyu.tea-nifty.com/annex/2008/04/autopagerizeaut_c163.html
	var nn = document.getElementById('nn');
	var n = nn.parentNode;
	if (n) n.href = n.href.replace(/[\?&]gbv=2/,'') + '&gbv=1';
})();

ついでに、AutoPagerizeにインクリメントモードとURLフィルターを追加するプラグインを書いてみた - 0xFFにもこの改造を導入してみました。

oAutoPagerize ver 0.4

Opera版は高速化、Safari版は安定性を向上しました。

更新はoAutoPagerize - 0xFFからどうぞ。

今回から、設定ファイルを別ファイルに書いておくことが出来るようにしてあります。下記のファイルをベースに、編集してみてください。(主に、自分用にSITEINFOを書いておいたけど、アップデート時に上書きしてしまったといったミスを防ぐ目的で導入しました)
Opera: http://ss-o.net/userjs/0AutoPagerize.Settings.js
Safari: http://ss-o.net/userjs/0AutoPagerize.Settings.user.js

// ==UserScript==
// @name           0AutoPagerize Settings
// @namespace      http://ss-o.net/
// @description    oAutoPagerize Settings
// @include        http*
// ==/UserScript==
window.AutoPagerizeSettings = {
	TOP_SITEINFO:[]
	,BOTTOM_SITEINFO:[]
	,naviType:'link'//link or number
	,DebugMode:false
	,AUTO_START:true
	,BASE_REMAIN_HEIGHT:400
	,FORCE_TARGET_WINDOW:true
	,TARGET_WINDOW_NAME:'_blank'
	,COLOR:{
		on: '#0f0',
		off: '#ccc',
		loading: '#0ff',
		terminated: '#00f',
		error: '#f0f'
	}
};

以下、変更点。

  • Opera版はインラインフレームで読み込んだ内容をDOMContentLoadedのタイミングで処理するように改善しました。画像の読み込みなどをほぼ確実に無視できるようになったので、かなり体感速度が改善されました。
  • Safari版で、読み込んだ内容に含まれるJavaScriptが実行されてしまうことがあるバグを修正しました。どうやら、importNodeするときに、除去したはずのscriptが復活していたみたいです。これで、mixiでも動作するようになりました。(ただ、Safariではmixiのコメント欄が逃げる問題が発生してしまっています)
  • 0.3.4までは、インラインに書かれたSITEINFOはinfogamiのものより必ず先に実行されていましたが、インラインのSITEINFOをTOPとBOTTOMに分け、それぞれに書き分けることで先に適用するか、後で適用するか選べるようにしました。infogamiにあるけどoAutoPagerizeではうまく動かないのでパッチ的にあてるSITEINFOはTOPに、infogamiへの掲載待ちのSITEINFOをとりあえず使いたい場合はBOTTOMに、といった感じに使い分けてみるとベターだと思います。
  • 右上のアイコンにUPDATEリンク(scriptのリンク)を追加しました。やや面倒だったSafariでのアップデートは、このリンクをクリックするだけで出来るようになりました。Operaの場合、コンテキストメニューから保存する必要はありますが、それでもかなり手軽になったと思います。SITEINFOはちょくちょく更新されているので、たまに更新してみると良いと思います。
  • 書くの忘れてた。jAutoPagerizeでスクロールバーを強制的に出すってのがあったので、真似てみました。os0x's fotolife - Hatena::Diary divをposition:absolute;にしてbottom:-1px;を指定する方法。

oAutoPagerize ver 0.3.2

更新情報は [oAutoPagerize] - 0xFF よりどうぞ。

id:ayanamist さんからバグレポートを頂き、Google Adに飛ぶ件がマズそうだったので検証してみたところ、scriptタグなどが除去されていないために、次のページ用に取得したHTML内のScriptが実行されてしまっていることがわかりました。
そこで、scriptやframeなどを除去するように修正したので、お手数ですが更新お願いします。(今回もOperaのほうは影響しません)

更新はoAutoPagerize - 0xFFからどうぞ。

修正に当たって、id:cho45さんのjAutoPagerizeを参考にさせていただきました。ありがとうございます。

Safariでmixiがバグるという報告が。原因不明っぽいので、対応に時間かかるかもしれません。。
以前、原因不明ですが、mixiでは動作しないようにする修正だけしておきました