【发布时间】:2016-02-21 12:09:21
【问题描述】:
嘿,我有一些与 Explorrer 一起使用的网站。 我必须在 Chrome 和 FireFox 上支持它。 当我尝试在 Chrome 中运行该站点时,我在这一行中遇到了错误:
行:
function NavigateSlip(target, linkC) {
var l;
try {
for (x = 1; x <= 11; x++) {
l = topAppFrame.frames["HMain"].document.getElementById("link" + x);
l.style.backgroundColor = "#003366";
}
} catch (e) {
}
var linkC = topAppFrame.frames["HMain"].document.getElementById(linkC);
linkC.style.backgroundColor = "red";
topAppFrame.document.frames['SlipArea'].location = target;
}
错误: 未捕获的类型错误:无法读取未定义的属性“getElementById”
谢谢
【问题讨论】:
-
向我们展示 HTML 代码。
-
我假设您没有将
id属性添加到您正在尝试getElementById的元素中。它在IE中工作,因为如果id属性不存在则IE 搜索name属性,所以它适用于IE。但对于 chrome 和 FF,您必须指定id属性。 -
那行之前
linkC的值是多少? -
所有主流浏览器都支持 getElementById() 方法,包括 chrome 和 firefox - Browser Support。请
console.log(linkC);告诉我它的价值... -
@WisdmLabs 这是关于
document的frame未设置 - FF 和 Chrome 无法定位有问题的框架或框架没有document所以这反过来变为undefined- 不支持undefined.getElementById('...')^.^
标签: javascript html google-chrome web