Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.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
ASP.NET网站速度非常慢Internet Explorer 10_Asp.net_Internet Explorer 10 - Fatal编程技术网

ASP.NET网站速度非常慢Internet Explorer 10

ASP.NET网站速度非常慢Internet Explorer 10,asp.net,internet-explorer-10,Asp.net,Internet Explorer 10,情景 我有一个ASP.NET网站,它在InternetExplorer8中运行得非常好,但在InternetExplorer10中运行速度非常慢 问题 在Internet Explorer 8中,回发或按钮单击事件大约需要1,5秒才能完成。在InternetExplorer10中,它至少需要30秒,有时需要60秒以上 我已经试过了 1.从Microsoft网站安装修补程序以更新浏览器定义文件 我尝试在web.config中强制IE8和IE9兼容模式,或者在IIS中或直接在html页面中添加HT

情景

我有一个ASP.NET网站,它在InternetExplorer8中运行得非常好,但在InternetExplorer10中运行速度非常慢

问题

在Internet Explorer 8中,回发或按钮单击事件大约需要1,5秒才能完成。在InternetExplorer10中,它至少需要30秒,有时需要60秒以上

我已经试过了

1.从Microsoft网站安装修补程序以更新浏览器定义文件

我尝试在web.config中强制IE8和IE9兼容模式,或者在IIS中或直接在html页面中添加HTTP头

已尝试更改服务器Windows server 2008 R2上ISS中的应用程序池

在客户端计算机上安装.NET framework 4.0

真正的问题


ASP.NET在将Internet Explorer 10检测为浏览器时是否仍然存在问题,或者浏览器之间的响应速度慢是否是web服务器浏览器定义文件等上的问题?

使用Internet Explorer浏览包含UpdatePanel的页面时,在单击启动异步回发的页面元素后,通常会出现10秒到45秒或更长的延迟。使用Internet Explorer以外的浏览器时,不会出现延迟

PageRequestManager的destroyTree方法在启动异步回发之前迭代UpdatePanel中的DOM元素,以便处理DOM元素。由于Internet Explorer的HTML查看器mshtml.dll在内存中存储DOM元素的方式,在某些情况下使用大型DOM树时,Internet Explorer中destroyTree方法的具体实现非常缓慢

在遇到延迟的页面的关闭元素之前添加下面的JavaScript

<script language="javascript" type="text/javascript">

  function disposeTree(sender, args) {
    var elements = args.get_panelsUpdating();
    for (var i = elements.length - 1; i >= 0; i--) {
        var element = elements[i];
        var allnodes = element.getElementsByTagName('*'),
            length = allnodes.length;
        var nodes = new Array(length)
        for (var k = 0; k < length; k++) {
            nodes[k] = allnodes[k];
        }
        for (var j = 0, l = nodes.length; j < l; j++) {
            var node = nodes[j];
            if (node.nodeType === 1) {
                if (node.dispose && typeof (node.dispose) === "function") {
                    node.dispose();
                }
                else if (node.control && typeof (node.control.dispose) === "function") {
                    node.control.dispose();
                }

                var behaviors = node._behaviors;
                if (behaviors) {
                    behaviors = Array.apply(null, behaviors);
                    for (var k = behaviors.length - 1; k >= 0; k--) {
                        behaviors[k].dispose();
                    }
                }
            }
        }
        element.innerHTML = "";
    }
}
Sys.WebForms.PageRequestManager.getInstance().add_pageLoading(disposeTree);

</script>

IE的性能工具告诉你什么是慢的?你在代码中使用了更新面板吗?@Dash..对不起,忘了提一下,我也尝试过删除更新面板,但响应时间仍然很慢。我认为AJAX工具可能是问题所在@Rowland调试器显示了非常大的视图,网络流量捕获中耗时的部分是帖子,感谢快速响应人员。无需删除更新面板。尝试应用解决方案。我希望这将是有益的。非常感谢dash,我一定会测试这一点,并张贴我的结果。感谢dash,添加了您的解决方案的项目,并重新安装了修补程序,一切都运行顺利!给每个人:如果答案有帮助,请投票支持。谢谢你应该参考来源,