【发布时间】:2009-04-01 13:46:32
【问题描述】:
我试图在旧的 ASP.NET 应用程序中找到一个错误,该错误导致 IE8 无法点击我们应用程序中的以下“按钮”区域:
<td
width="150px"
class="ctl00_CP1_UiCommandManager1i toolBarItem"
valign="middle"
onmouseout="onMouseOverCommand(this,1,'ctl00_CP1_UiCommandManager1',0,0);"
onmouseover="onMouseOverCommand(this,0,'ctl00_CP1_UiCommandManager1',0,0);"
onmousedown="onMouseDownCommand(this, 'ctl00_CP1_UiCommandManager1', 0, 0);"
onmouseup="onMouseUpCommand(this, 'ctl00_CP1_UiCommandManager1', 0, 0);"
id="ctl00_CP1_UiCommandManager1_0_0">
<span style="width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;">
NEW
</span>
</td>
当我们把IE8切换到IE7兼容模式,问题就消失了,IE7可以点击了。
由于上述 HTML 是由第三方控件(Janus,http://www.janusys.com/controls)生成的,我们没有源代码。
- 有人遇到过类似的 IE8 问题吗?
- 我确定它实际上触发了 onMouseDownCommand 命令
- IE8 中按钮区域的 CSS 也不同,它没有 IE7 中的颜色阴影。我可以想象在某个地方 HTML 是无效的并且 IE8 更严格并没有发挥作用,但是在哪里?
- 欢迎提供有关如何缩小此错误范围的任何建议
回答:
原来是应用程序没有在 navigator.agent 中检查“MSIE 8.0”,因此认为 IE8 具有非 Internet Explorer 浏览器。
感谢 Lazarus 的提示,IE8 Javascript 调试器非常好,就像 IE 的 Firebug,会更多地使用它!
【问题讨论】:
-
你有你的应用程序的 URL 吗?
标签: javascript visual-studio-2005 internet-explorer-8