1

我在网页中遇到了一个非常奇怪的错误。这发生在 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 时,我的工作站也会出现问题。

4

1 回答 1

0

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

这不是第一次兼容性让我大吃一惊。一旦发生这种奇怪的事情,我将不得不学会尝试第一件事。

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

于 2013-04-09T20:37:19.140 回答