这可能是一个难以回答的问题,因为很难证明问题 1 。
我正在使用datatables + datatables jEditable,但我已经完全改变(并改进了)代码,这样当用户双击表中的一行时,会打开一个带有表单的jQuery UI对话框,您可以在其中编辑该行。它利用一种形式完成两项任务,即添加&编辑。
这在所有浏览器中都很好用,除了你猜对了:IE 我发誓,这是迄今为止IE所见过的最奇怪的行为。
当你双击一行时,对话框不会显示,但是当你打开开发工具(F12)时,它会突然出现。
澄清
令人讨厌的是我无法调试问题,因为一旦打开调试器它就会消失......!
我原本以为这个问题是因为默认情况下在兼容性视图中打开IE上的Intranet网站,所以我改变了这个设置,希望能解决问题。
它没有。
此外,一旦打开开发工具,并刷新页面,就没有错误或任何错误代码的迹象。
所以... 什么机智?
1 代码相当复杂,我不知道我是否可以简化它并进行演示。这是在内联网上完成的,所使用的数据是分类的,所以我不允许/不能直接显示给你。
答案 0 :(得分:5)
这可能不是您烦恼的原因。但我之前看过IE的类似行为。罪魁祸首是代码中的一个迷路console.log
。在IE中,window.console
在开放工具开启之前不存在,并且在开发工具关闭后继续存在于window
。如果您的代码中有一个迷路console.log
,则可能会阻止对话框打开,console
为undefined
,然后从您尝试调试时开始。
如果您想测试这种可能性但又不想追捕流浪,只需将下面的内容添加到文档的顶部:
if (!window.console) {
this.console = {
log: $.noop
};
}