gpt4 book ai didi

javascript - 调试 IE 崩溃

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:17:55 30 4
gpt4 key购买 nike

我有一个网络应用程序在 Chrome 和 FireFox 中运行良好,但在 IE 中崩溃。请注意,这不是 JavaScript 错误,而是 iexplore.exe 进程实际崩溃。

代码贴在下面。这将在 IE9 中崩溃(单击按钮时)。逆向 JavaScript 或更改 CSS 可能会消除这个问题,但要意识到这是从一个大得多的应用程序中减少的代码,无法通过这种方式轻松更改(例如,在实际应用程序中,两个 JavaScript 命令是在两个不同的函数中调用——第二个函数根据第一个函数的结果有条件地运行)。我什至不确定我的问题是什么,除了“有没有办法让微软快速修补这个问题?”我有兴趣听听人们的想法:

<!DOCTYPE html>
<html>
<head>
<title>IE Crash</title>
</head>
<body>
<div id="dvStep11" style="width:500px;">
<label for="inpDOB">Date of Birth (mm/dd/yyyy)</label>
<input type="text" id="inpDOB" style="width:350px;" />
</div>
<button onclick="document.getElementById('inpDOB').value = '12/7/1971';document.getElementById('dvStep11').style.display='none';">Click here</button>
</body>
</html>

编辑:我已经向 Microsoft 提出了一个案例,并且正在与那里的开发团队成员一起处理这个问题。当我收到更多信息时,我将对此进行更新。

最佳答案

Microsoft 已向我确认这是 IE9 渲染引擎中的错误。根据我的进一步研究,这与父 DIV 的宽度与 INPUT 的宽度相结合导致 INPUT 换行这一事实有关。出于某种原因,在这种情况下,当为 INPUT 赋值并立即隐藏父 DIV 时,IE 会崩溃。

Microsoft 建议我使用这行代码强制 IE 使用 IE8 渲染引擎(它不会崩溃):

<meta http-equiv="X-UA-Compatible" content="IE=8" />

但是,我发现我也可以通过将 INPUT 包装在它自己的非样式化 DIV 或 SPAN 中来避免这个问题。这是首选,因为除了这个错误之外,IE9 渲染引擎比 IE8 好得多(也快)。

关于javascript - 调试 IE 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10080706/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com