Firefoxのキャッシュの件ですが、近からず、遠からず、微妙にはずしたくさいので、問題のプログラムを即行ででっちあげて、改めて徹底調査。 おかげさまで「2回のリクエスト」も再現しました。 事情はかなり複雑です。 先にまとめてしまいましょう。
タブの表示状態が関係ありそうな旨を書きましたが、これは大ハズレ。 レスポンスのキャッシュ制御が絡んでいるようで、タブの状態は無関係でした。 というわけで、普通ならこれでおしまいですが、本業は“こちら”なので、ついでに解決してしまいましょうか。
ゆるゆる~っと、要件をまとめると、
普通に作るとどっち付かずなわけですねぇ。 両者とも特殊なので『Safari』と『Opera』では問題なしという前提で(汗) ちなみに、ウチの会社の場合はIEが無視されますね(爆)
キャッシュが有効だとIEが頑固で、キャッシュが無効だとFirefoxが挙動不審、っと。 う~んと、え~と。 間を取って「ちょっとだけキャッシュする」というのはどうでしょう。 簡単な話です。 キャッシュを無効にするのはやめて、代わりに、Expiresヘッダに+1分以下(たぶん+10秒でも大丈夫)の時刻を設定してあげるのです。
試したところ、見事、Firefoxでは本体画像とアイコンが一致、かつ、順番どおりにスライド。 IEでは最も頑固なキャッシュの設定でも、(例えば)1分を過ぎれば次の画像が表示されました。
ちなみに、Firefox自体のキャッシュを無効にしてURLをキックすると、見事、画像本体、タブのアイコン、アドレスバーのアイコンはバラバラ。 やはり「3回のリクエスト」はそういう内訳でしたか。 面白い。 あと、解決前のプログラムでタブを行ったり来たりすると、アドレスバーのアイコンが・・・
軽い勉強にはなりましたが、残念ながら、あまり役には立ちませんねぇ(苦笑) というわけで、なんとかしてよ、モジラえも~ん!!
2006年 1月 17日 [この記事のURL] [コメント]
※“http://”を含む送信はできません。