Firefoxで正常に動作するコードがあり、ChromeがIE 11.ではありません。次のエラーメッセージが表示されます。
1) SCRIPT5009: '$' is undefined
For this line of code:
$.extend({
)}
2)SCRIPT5009: 'jQuery' is undefined
// Browser globals
factory( jQuery );
3)SCRIPT1010: Expected identifier
.catch( function( error ) {
jQuery.readyException( error );
} );
すべてが含まれるヘッダータグを次に示します。
<head>
<script type="text/javascript" src="jquery/jquery-3.1.1.js"></script>
<script type="text/javascript" src="jquery/jquery-ui.js"></script>
<script type="text/javascript" src="jquery/JQuery_alert.js"></script>
<link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css">
<link rel="stylesheet" type="text/css" href="jquery/jquery-ui.structure.css">
<link rel="stylesheet" type="text/css" href="jquery/jquery-ui.theme.css">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
開発ツールをIEで開き、右上隅で[ドキュメント]モードをクリックしてEdgeに切り替えると、上記のすべてのインクルードを含むコードが正常に機能することがわかりました。 Edgeとは何ですか?IEを使用している他の誰かがページを実行するのに問題がないことを確認する方法はありますか?それを修正する方法はありますか?事前に感謝します。
互換性ビュー
Internet Explorerを互換表示で実行すると、最新バージョンのjQueryと互換性のないIE8などの古いバージョンをエミュレートします(jQueryの1.xバージョンのみが古いバージョンのIEと互換性があります)。
互換表示が問題かどうかを確認する
Internet ExplorerでF12キーを押すと、開発者ツールが表示されます。ツールバーの右上付近に、Edge、10、9、8、7、5を切り替えることができるドロップダウンがあります。これを切り替えると、新しいドキュメントモードを使用してページが更新されます。 Edgeに切り替えてもjQueryエラーが表示される場合は、問題として互換性ビューを除外できます。
ページが互換表示で表示されないようにする
Internet Explorerのドキュメントモードの指定については、こちらのドキュメントを確認してください。 https://msdn.Microsoft.com/en-US/library/jj676915.aspx
次のように<meta>
タグをHTMLのヘッダー(ヘッダー内の最初のタグである必要があります)に挿入することにより、IE11を強制的にエッジモードで表示することもできます。
<html>
<head>
<meta http-equiv="x-ua-compatible" content="IE=Edge">
...
これは、Internet Explorerにそのドキュメントモードを明示的に使用するように指示します。