我写了一些修改网页图片的代码。适用于Firefox和Safari。但是试图让它与Internet Explorer一起工作让我很难过。什么是资源管理器中的“parentNode”?或者如何让它发挥作用?
images = document.getElementsByTagName('img')
parms = {};
for (a=0;a < images.length;a++){
parent = images[a].parentNode; // <-- What to substitute for explorer?
parms[a] = {};
parms[a].bigsrc=parent.getAttribute("href");
parms[a].w_o = images[a].width;
parms[a].h_o = images[a].height;
parms[a].IsBig = false;
parms[a].loaded = false;
images[a].border=0;
parent.setAttribute("href","javascript:MakeBig('"+a+"')");
}
答案 0 :(得分:13)
问题在于将parentNode分配给名为“parent”的var。这似乎是IE中一个破坏代码的保留字。更改var名称,它应该可以工作。
答案 1 :(得分:3)
parentNode
在IE中运行良好(certain cases除外,这里很可能无关紧要)。错误几乎肯定是代码中的其他地方。
答案 2 :(得分:0)
您是否期望parentNode成为锚点?看起来您正试图将图像包装在链接中。如果这是正确的,可以作为替代方案的是向图像本身添加onclick,并设置手形光标。这可能会使图像的外观成为链接,而您无需关心parentNode是什么。