旧それなりブログの跡地、画像やスタイルやJSなどが壊れてることがあります。

[IE6] インターネットサイトを開けません 操作は中断されました バグの修正方法

2010年11月26日

IE6で、

  インターネットサイト *** を開けません
  操作は中断されました

または

  Internet Explorer cannot open the Internet site ***.
  Operation Aborted.

というエラーが発生することがありますが、その対処方法についてです。

原因は?

わからねーっす ヽ( ´ー`)丿

DOMの生成直後にJavaScriptでDOM属性を操作したりすると発生するようですが、
あるPCだけバグの再現性があったり、他のPCは無かったりと安定しません。
これ以上は、仕様書やソースコードを追わないとわからんので、諦めました。

対処法

ただ、原因はわからないのですが、まず行う対処法があります。

バグる部分をある程度絞り込んだ後に setTimeout で該当部分を括って
実行を遅らせてやると直ることが多いです。

例えば、こんなコードがあって

<script type="text/javascript">
    処理1();
    処理2();
</script>

処理2の中でエラーが発生するところまで絞り込めたら

<script type="text/javascript">
    処理1();
    setTimeout(function(){
        処理2();
    }, 100);
</script>

として、実行を一瞬遅らせると直ることがあります。

※もし処理1の方でエラーが出ていた場合は、
 setTimeoutで処理1を括ると、処理2が先に実行されてしまうこともあるので、
 その点は工夫してください。

ちなみに: IE6の現在のシェア

日本で一般ピーポー向けサイトなら、
IE6のシェアはまだ 10%~20% 位はあるはずです。

日々下がってはいますが、少なくとも数ヶ月は対応が必要っぽいです。 ふぅ・・・。