人々の時間を節約する方法としてこれを掲載しています。
私はjQuery 1.11.3とMVC with ScriptBundleを使用しています
大きなページで、ready.promise で addEventListener を呼び出すとエラーが発生し始めました
おかしなことに、u = document; とすると、u.addEventListener = 未定義ですが、u の下のメソッドを見ると、u = window; と同じように addEventListener が表示されます。
jQueryのソースを見てみると、明らかに
if ( document.readyState === "complete" ) {
// Handle it asynchronously to allow scripts the opportunity to delay ready
setTimeout( jQuery.ready );
// Standards-based browsers support DOMContentLoaded
} else if ( document.addEventListener ) {
// Use the handy event callback
document.addEventListener( "DOMContentLoaded", completed, false );
// A fallback to window.onload, that will always work
window.addEventListener( "load", completed, false );
// If IE event model is used
}
jQuery-1.11.3.min.js は次のとおりです。
else if(y.addEventListener)y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else
だから私は問題を理解しようとして気が狂っていました。
次に、IE デバッガーの js 出力で次のことに気付きました。
else y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else
addEventListener のチェックがありませんでした。
スクリプト バンドルを jquery-{version}.js から jquery.1.11.3.js に変更すると、すべてが機能しました (if ステートメントが存在していました)。
再度変更しましたが、引き続き機能するため、明らかにコンパイルに依存する何かが進行中です。