去人たち開発ブログ

同人サークルK2Ceeが去人たち開発についての記事を掲載してきます!

クロスブラウザ IE11 で javascript エラー

jquery ベースの javascript アプリケーションを作っていたのだけれど、普段 chrome 使いなので、よっしゃこのでんでいっちょ、他のブラウザでも試してみるかと思った。
jquery ベースなのでまあ、そんなに大きな問題はないだろうと思っていたら、IE11 でエラーがでた。
FireFox でも問題なかったので、また偏屈な IE か……と、終わりかけたはずの作業から泥沼のデバッグである。

現象としては初期化処理で

$.when($.getScript(...), $.getScript(...), $.getScript(...)).done(alert('loaded'));

てな感じで動的に外部ライブラリをがんがん読み込んで
その後、読み込んだライブラリでごにょごにょするんだけど、ライブラリが読み込めてない動作をしやがるというもの。
もちろん、そこで定義されてない関数をよんでスクリプトは停止する。
ただエラーが発生した状態でブラウザの再読込を実行すると正常に動作する。
$.getScript したあと、実はまだ読み込まれていないとか……などとおもってディレイをいれてみたが、いつまでたっても読み込まれたことにはならない……


IE11 なんて滅びてしまえばいいのになんでトップシェアなんだよ!ヽ(`Д´)ノ


デバッガで追っていくとなにか、見覚えのないスクリプトブロックなるところでエラーが出ている。
なんだ・・・?
ん・・・?
これは・・・? avast・・・?
IE11 というよりも、PC に avast をインストールしたときに
Avast Online Security プラグインIE にもウィルスのごとく侵入してきてぼくちゃんの IE をこんな淫らなブラウザに変えてしまったのでは!?
プラグイン管理で、このなにやら淫靡なプラグインを早速無効にしてやると、なんど無効にしても無効にならないので、コンテクストは拡大しわたしの無効なのだとあざ笑われているかのような気がして
くそ! くそ! くそっ!
と机をばんばんたたいたあと、IEをまるごと閉じてやった。

ふう・・・

一段落して取り乱してしまったことに、恥じ入りそっと IE を立ち上げて動作を確認してみると今までエラーで動かなかったスクリプトが動いている。
プラグイン管理でみてみると、Avast のなんらちゃらは無効になっていて、しゅん(´・ω・`)としている様子だった。
一件落着……とはいけないか……
回避方法あるんだろうか……