Posted on 26-01-2009 | What's New - 新着情報 | タグ: jQuery
ページデータの読み込みが速くなるように改善して体感速度を上げました。
今回の変更で、Firefox や Safari では最大200%程度速くなっています。
が、IE 7では JavaScript の処理が重く、効果は微妙かもしれません…
(IE 6 の方がなぜかマシなのですよねぇ)スミマセン。
追記:別のマシンからアクセスしてみたら IE 7でも早くなってました!
テスト用にはとてもご老体のノートPCを使っているので…
技術的な解説
jQuery + Ajax を使って、ページの一部のみを読み込むように変更しました。
その際に問題になるのが、「ブラウザの戻るボタンが効かなくなる」という点
ですが、以下のライブラリを使わせていただくことでこれを回避しています。
jQuery History
このライブラリを使うと、URL の # 以降にページの状態を記憶できます。
注意すべきなのは、# 以降に URL エンコードが必要となる ASCII 文字以外の
文字列(日本語やスペースなど)を使うと、callback 関数が 2 回呼ばれると
いう仕様になっている点です。
そのような使い方をしたい場合は(例:#/page2?q=英語で)
一部の条件式をエンコードをそろえた式に書き換えれば問題なく使えます。
