gpt4 book ai didi

jquery - 打开对话框时 IE 的奇怪行为

转载 作者:行者123 更新时间:2023-12-01 01:02:54 25 4
gpt4 key购买 nike

考虑到演示该问题非常困难,这可能是一个很难回答的问题1

我正在使用 datatables + datatables jEditable,但我已经完全更改(并改进)了代码,以便当用户双击表中的行时,会打开一个带有表单的 jQuery UI 对话框,您可以在其中编辑该行。它利用一种表单完成两项任务,即添加和编辑。

这在所有浏览器中都很好,除了,你猜对了:IE。
我发誓,这是迄今为止我见过的 IE 的最奇怪的行为。

当您双击一行时,对话框不会显示,但是当您打开开发工具(F12)时,它突然起作用了。

澄清

  1. 用户打开 Internet Explorer(在本例中为 IE9,但早期版本也会发生这种情况)
  2. 用户浏览 Intranet
  3. 用户双击数据表行。什么也没发生。
  4. 用户打开开发工具 (F12) 并将其关闭
  5. 用户双击数据表行。对话框打开。
  6. 用户关闭选项卡并重新打开并再次导航到那里。一切正常。
  7. 用户关闭 Internet Explorer
  8. 重复步骤 1 到 8

令人烦恼的是我无法调试该问题,因为一旦我打开调试器它就消失了......!

我最初认为该问题是因为 IE 上的 Intranet 站点默认在兼容性 View 中打开,因此我更改了该设置,希望能解决该问题。
但事实并非如此。

此外,打开开发工具并刷新页面后,就没有错误或任何错误代码的迹象。

所以...这是怎么回事?

1代码相当复杂,我不知道是否可以足够简化并进行演示。这是在内网上完成的,并且使用的数据是保密的,所以我也不允许/不能直接向您展示。

最佳答案

这可能不是您遇到麻烦的原因。但我以前在 IE 中看到过类似的行为。罪魁祸首是代码中的一个杂散的 console.log 。在 IE 中,window.console 在开发工具打开之前不存在,并且在开发工具关闭后继续存在于 window 中。如果您的代码中有杂散的 console.log,它可能会阻止对话框打开,因为 console未定义,然后开始该时刻你尝试调试它。

如果您想测试这种可能性,但又不想追捕流浪者,只需将以下内容添加到文档顶部:

if (!window.console) {
this.console = {
log: $.noop
};
}

关于jquery - 打开对话框时 IE 的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10801010/

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