Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ScriptBundle和jQuery缩小会导致addEventListener出现问题_Javascript_Jquery_Asp.net Mvc_Bundling And Minification_Scriptbundle - Fatal编程技术网

Javascript ScriptBundle和jQuery缩小会导致addEventListener出现问题

Javascript ScriptBundle和jQuery缩小会导致addEventListener出现问题,javascript,jquery,asp.net-mvc,bundling-and-minification,scriptbundle,Javascript,Jquery,Asp.net Mvc,Bundling And Minification,Scriptbundle,我把它作为一种节省人们时间的方法 我正在使用jQuery1.11.3和带有ScriptBundle的MVC 在大型页面上,我开始在ready.promise中调用addEventListener时出错 有趣的是,假设u=文档; u、 addEventListener=未定义 但是查看u下的方法显示addEventListener 相同,其中u=窗口 查看jQuery源代码,显然 if ( document.readyState === "complete" ) { //

我把它作为一种节省人们时间的方法

我正在使用jQuery1.11.3和带有ScriptBundle的MVC

在大型页面上,我开始在ready.promise中调用addEventListener时出错

有趣的是,假设u=文档; u、 addEventListener=未定义 但是查看u下的方法显示addEventListener 相同,其中u=窗口

查看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语句也存在)


我再次更改了它,它继续工作,因此显然存在编译依赖性。

我最终跟踪到MVC缩小过程,要么缓存jQuery脚本,要么从jQuery脚本中剥离一些内容。但前提是脚本首先是.min版本