我在Windows 7上的IE8中加载页面时收到Java脚本错误:document.prodimage
为null或不是对象。
我删除了用作API调用的动态专有代码以获取数据,所以读取:“”的区域是我动态抓取内容的地方,例如图像&链接,基于某人正在查看的产品。无论如何,这不是问题。这是:
<a rel="position:'inside',showTitle:false,adjustX:-4,adjustY:-4" href="">
<img border="0" class="prodimage" id="prodimage" src="" width="200" height="200" alt="" onMouseover="document.prodimage.src='';" style="margin-right:auto;margin-left:auto;display:block;"/>
</a>
答案 0 :(得分:2)
您可能需要window.prodimage
,因为它是window
对象,可以为id
值的元素创建属性。
但通常情况下,尽管适用于所有现代浏览器(以及相当多的旧浏览器)并且正在成为specified behavior,但更常见的是使用getElementById
。为清楚起见,我不鼓励你使用自动全局变量,只是说出你在使用document
时可能会想到的。
在你的情况下,由于你使用的是onXYZ
事件处理程序,只需使用this
:
<a rel="position:'inside',showTitle:false,adjustX:-4,adjustY:-4" href="">
<img border="0" class="prodimage" id="prodimage" src="" width="200" height="200" alt="" onMouseover="this.src='';" style="margin-right:auto;margin-left:auto;display:block;"/>
<!-- Change is here ---------------------------------------------------------------------------------^^^^ -->
</a>
我不确定我是否明白为什么要在鼠标悬停时清除src
属性,但是......
答案 1 :(得分:1)
这不是DOM的工作方式。
您需要document.getElementById('prodimage');