ページの文字化けをワンアクションで直すスクリプト

懺悔

日曜はTV見てたら寝オチしてて、気づくと朝でした。

月曜はWindows立ち上がりの待ち時間に小休止と思ってたら、睡魔に負けてしまってました。
何とか朝より早くは起きましたけど、時間帯的には薄明って感じですかね。

当初のネタを書く時間は無いので、別のネタを書きます。
予定は立てはするものの実行するのは難しいですねw(自業自得的なところがあるけど)
まぁ、金もらってやってるなら問題ですけど、飽くまで趣味なので(・ε・)キニシナイ!!

IE9で頻発するような

いやIE9単体ではほとんど使わないんで、IE9IEコンポーネントで頻発、もしくは、Sleipnir(+IE9)環境で頻発な現象かもしれないですけどね。

何らかの理由でページの読み込みがタイムアウトして、リロードして再読み込みが成功した場合に必ずといっていいほど文字化けするような気がします。*1
そういう時はページのエンコードを変えればいいわけなんですが、その操作が煩わしくなってきたのでアクションでどうにかしようと書いてみました。

FixPageEncode.js

(function() {

var meta = document.getElementsByTagName("meta");

for(var i = 0; i < meta.length; i++) {
	if(meta[i].httpEquiv.toLowerCase().match(/content-type/) != null) {
		meta = meta[i].content.split("=")[1];
		
		if(meta != document.charset) {
			sleipnir.api.ExecuteAction("Encode(" + meta + ")");
		}
		
		break;
	}
}
	
})();

metaタグから文字コード取り出すところが乱暴ですねw

*1:さらにIE9に変えた当初はタイムアウト自体が頻発するという謎な自体に見舞われていたし