代码之家  ›  专栏  ›  技术社区  ›  Edward Tanguay

为什么javascript点击区域在IE8中不起作用?

  •  0
  • Edward Tanguay  · 技术社区  · 16 年前

    我试图在旧的ASP.NET应用程序中找到一个bug, 导致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命令
    • 同样,按钮区域的CSS在IE8中也不同,它没有像在IE7中那样的颜色阴影。我可以想象,在某个地方,HTML是无效的,而IE8更严格并没有发挥作用,但在哪里呢?
    • 关于如何缩小这个bug的任何建议欢迎

    答:

    结果是,应用程序没有检查navigator.agent中的“msie 8.0”,因此认为ie8具有非Internet Explorer浏览器。

    感谢Lazarus提供的提示,IE8javascript调试器非常好,就像IE的Firebug一样,将更多地使用它!

    2 回复  |  直到 15 年前
        1
  •  2
  •   Lazarus    16 年前

    IE8上的F12让您了解具有JS调试功能的开发工具,这可能是我的第一站。

        2
  •  0
  •   Júlio    15 年前

    IE8中的事件仅在 元素。

    推荐文章