为什么这个元素"undefined" - 它显然存在



我得到什么似乎是一个非常奇怪的错误在一个网页。这发生在VS2008和VS2012中。

<div class="content_header" onclick="tierMenu(menu2,img2)">
    <img id="img2" alt="Colapse Trips" height="9" src="Images/plus.gif" width="9" />
    Travel Summary
</div>

单击加号图像应该将图像更改为减号(展开项目以显示数据)。单击时调用tierMenu javascript方法,并且它存在。但是我得到一个错误:

0x800a1391 - Microsoft JScript运行时错误:'img2'是未定义的

"Img2"肯定存在。在页面的其他地方也有类似的代码,它们都以相同的方式运行——得到相同的错误。奇怪的是,代码在生产环境中运行良好。要求:

function tierMenu(objMenu,objImage)
{
   if(objMenu && objImage)
   {
    ...
   }
}

碰巧我的开发机器是64位的Windows 7。我想象不出这有什么问题。什么好主意吗?

编辑添加:一个同事的工作站是Win XP在VS2008上尝试这个问题没有发生。真的奇怪。这个问题发生在我的工作站上,即使在Visual Studio之外运行,即直接从浏览器使用localhost。

这原来是浏览器兼容性问题。如果我将IE9设置为兼容模式,问题就会消失。

这已经不是兼容性第一次让我头疼了。一旦发生这种奇怪的事情,我必须学会第一时间尝试。

感谢所有看到这篇文章并和我一起困惑的人。

最新更新