0

我做了一个很好的网站,做了很多 DOM 操作。在 chrome 和 firefox 中运行良好。尽管客户现在要求它也可以在 Internet Explorer 中使用。最新版本足以开始(在我的情况下是 10.0.9200.16721)。

所以冒险开始了,我按 F12 并看到一组非常熟悉的开发人员工具(来自 chrome 和 firebug)。当我跟踪 JS 代码时,我注意到 HTML 选项卡(带有 DOM)实际上并没有更新。

根据此处的手册http://msdn.microsoft.com/en-us/library/ie/gg589512(v=vs.85).aspx “刷新 HTML 选项卡以获取当前 DOM 是一个好主意,尤其是当你使用动态元素时。” (d0h ??) 问题是.. 我找不到启用 HTML 选项卡自动更新的按钮。因此,每次我进入新的 JS 行时,我都必须单击刷新按钮(更不用说实时 DOM 视图)。

但这还不是全部……每次我单击刷新按钮时,整个 DOM 树视图都会崩溃。我必须点击一堆加号才能查看我感兴趣的节点。

有人对此有解决方案吗?因为这样需要几天的时间将需要几周的时间......

4

1 回答 1

1

如何使用 IE 开发人员工具检查动态创建的 DOM 上的元素的副本

从做了一点挖掘,似乎这也是其他人报告的问题。你可能会对这个线程感兴趣。

其中最相关的部分:

问题是,当您从由超时调用的回调中修改 dom(使用或不使用 jquery)时,该回调位于绑定到事件的回调中,IE 会崩溃并且不会更新开发工具中的 dom 树。在开发工具中对已更改标签的后续修改不会有任何效果。

根据我的测试,正是这一系列调用的组合导致了这种情况发生。如果 dom 是从 settimeout 回调修改的,但没有在事件回调中,则它可以工作。如果您直接调用修改 dom 的函数而不是 settimeout,则它可以工作。

是您所说的使问题复杂化的工作示例。

基本上,这是 IE 的问题。目前没有可用的修复程序。另一个线程上接受的答案似乎是一个非常糟糕的解决方法。

于 2013-10-24T10:15:42.303 回答