Sleipnir のお気に入りから Web ページを開くと 2 回ロードされる

なんだかんだいって Sleipnir を使い続けているさるべーじですこんばんは。
だって他の発展途上ブラウザよりもかゆいところに手が届きやすいですし、いくつか自作のスクリプトもカマして便利な小技効かしていたりするもので。他のブラウザに乗り換えるのは私にとってはまだまだ現実的ではなく。

とはいいながら。
なんだか最近、お気に入りリストから Web ページを開くと、ロードの途中で一度真っ白になり、リロードがかかるようになりました。
重いページなどを見ようとした時に約 2 倍の時間がかかるのはイタいです。ざくざくいろんなページを読みたいような場合は、けっこうイラッと来ます。
IE や他のブラウザではそんな動作にはならないんですが。

しかし、原因も対処もよくわからず。我慢して使っておったわけですよ。

で、先日、どうもこのへんが原因なんではないかと思うようになってきました。

タブブラウザ Sleipnir オンラインデータベース(テスト版バグトラッキング/60)

あまり歯切れのいい結論になっていないのがちょっとアレですが、どうやら

個別設定したお気に入りのエンコーディングと実際のページのエンコードが異なる場合に再読み込みをかける

という動作を行っているようなんですね。

行儀の悪い html だとエンコードを指定していない場合があり、IE のエンコード推論が誤認識してしまうような場合に、あらかじめエンコードを指定しておける機能らしいんですが。

お気に入りの[個別設定]-[エンコーディング] は、「アクティブなページを追加」でお気に入り登録した際にその元となったページのエンコードを初期値として保持します。個別設定自体は Off の状態ですが、初期値は既に設定されているんですね。

私はいまだに基本 JavaScript Off でブラウズしており、自分なりに安心だというサイトに限ってお気に入り登録する際に個別設定で On 設定するようにしています。ので、けっこう個別設定を有効にしているお気に入りが多いんですが。
エンコーディングについては今までさして設定を変更しないが故の不具合が発生していなかったので、全然注意を払っていませんでした。

で。
この「エンコード自動取得 → 個別設定の初期値として保持」する機能は、よく考えるとけっこう諸刃の剣っぽいんです。


ひとつは、お気に入り登録後に対象のページのエンコードが変更されてしまった場合。
登録した時点では Shift-JIS だったのに、後日 UTF-8 でリライトされちゃったような状況ですね。

こうなると、お気に入りで設定されているエンコードと、目的のページで採用しているエンコードが明らかに違ってしまいます。

もうひとつは、ページの中に別ページが埋め込まれていて、それぞれエンコードが異なる場合。
こちらは、自動更新タイプの広告などをページの中に埋め込んでいるとか、mixi アプリのようにある会社がガワを提供して、中のメインコンテンツは別の会社が提供しているなんてケースで。

この場合は、そもそもお気に入り登録時に自動取得したエンコードがガワ側、私がメインで読みたいのは埋め込まれた内側、なんて感じでやはりエンコードがズレるという状況が発生し得ます。

でまあ、そんな状況でリロードが発生しているのではないかと。思うわけですよ。


じゃあどうすればいいのか、というのも少し思いついたので。

要は IE の自動判断にゆだねちゃえばいいと思うので、[個別設定]-[エンコーディング]を

自動選択

に設定しちゃおう、と。

これであればページのエンコードが変更されてもお気に入り側を調整する必要はなくなりますし、ページ内ページでエンコードが違ってもそれぞれで指定されているエンコードに応じたレンダリングがされるのでそれなりに表示されるのではないかと思います。

少なくとも、私はこれでリロードされることはなくなりましたよ。

どうもうまくリロード状況を再現できなかったり、ひとつのお気に入りからのページ表示でリロードされたりされなかったりして、あまり確度の高い情報にはできませんでした。
上記の文章を断言調にできない煮え切らなさも、このへんが理由です。

ダメもとで一度試してみても損はありませんよ、程度のお話ですが、まあ半分は自分への備忘録代わりということでひとつ。


あ。
あけましておめでとうございます、そういえば。

今年もいろいろよろしくお願いいたします。

コメントを投稿