Hatena::Diary

GANAwareはてな版

2008-05-06

AutoPagerize を少し高速化

http://github.com/ganaware/autopagerize/tree/master

AutoPagerize は便利なのですが、最近そのスクロール時の遅さが気になってきました。カーソルキーでスクロールさせたり、マウスホイールスクロールさせたりすると非力なマシンではけっこう遅くなります。

少々調査してみたところ、AutoPagerrize はステータスを表示するためにページの右上に緑色の■を表示しますが、そのスタイルが position:fixed に設定されているのが原因でした。推測ですが、このスタイルを利用すると画面の再描画量が多くなるため遅くなると思われます。

そこで、position:fixed を position:absolute に変更しスクロール後 1 秒たったら、バーの位置に合わせて top: を修正するようにしてみました。

とりあえず手元のマシンでは、快適です。

資料:

こういうステータス表示はステータスバーに表示してほしいのですが、Greasemonkey を使っている限りそのようなことはできません。AutoPagerizeFirefox拡張であれば可能だと思いますが、それはそれでコードを書く量が増えそうですね。


AutoPagerize のつづりを AutoPagerise と間違ってしまうことがしばしばあります。リポジトリの名前間違えてなくて良かった。


(5/11追記)

github の作法に従っていなかったので、 Rails on the Run - How to use github and submit a patch を見ながら修正してみました。github ではこんな感じにフォークの図が表示されるんですね。

f:id:ganaware:20080511053053p:image