jQueryの$.GetScriptを使用してJSを読み込もうとすると、IEで読み込みに失敗する
jQueryの$.GetScriptを使用してJavaScriptファイルを読み込もうとすると、IEで読み込みに失敗することがあります。
【JavaScript】
原因
jQueryの$.GetScriptの大本である$.ajaxでは、UTF-8で読み込もうとするため、読み込むJavaScriptファイル内にマルチバイトを含み、かつファイルの文字コードがShift_JISである場合にこの現象が起こります。
回避方法
この不具合(バグ)は以下の方法で回避することができます。
読み込むJavaScriptファイルの文字コードをUTF-8にする。
読み込むJavaScriptファイルに変更が加えられるのであれば、読み込むJavaScriptファイルの文字コードを変更することで回避できます。
$.GetScriptを使用しないでscript要素を作成して設置する。
$.GetScriptを使用せず、script要素を作成して設置する(読み込む)ことで回避できます。
読み込むJavaScriptの文字コードが変更できない場合は、こちらを使用するとよいでしょう。
なお、HTMLファイルとJavaScriptファイルの文字コードが異なる場合はattrメソッドにcharsetの指定を追加してあげないと、文字化けや一部コードの動作不良が発生することがあります。