我有一些在Firefox和Chrome中正确运行的javascript,但导致ie死了"错误:' foo'未定义(在下面的代码中,行foo.onclick = false)。
我尝试在页面重新加载时禁用图像的onlick功能。代码如下:
function UpdateQueryAndRefresh(queryName, queryValue) {
var escapedQueryName = encodeURIComponent(queryName);
var escapedQueryValue = encodeURIComponent(queryValue);
var upd_url = UpdateQueryStringParameter(document.URL, escapedQueryName, escapedQueryValue);
if (upd_url.toUpperCase() != document.URL.toUpperCase()) {
// Disable save button during refresh
// Update current scale parameter also
upd_url = UpdateQueryStringParameter(upd_url, "Scale", m_scale.toString());
foo.onclick = false;
window.location.href = upd_url;
}
}
我已经读过,如果某些东西在其他浏览器中有效但不是,即我的标题可能是错误的,但我检查了标题,它们看起来很好。当我使用ie内置脚本调试器时,我可以看到foo图像未定义的原因。
我做错了什么?
@JamieBarker 所以我对这种语言有点新鲜...... Foo是一个在页面正文中定义为图像的图像。这是:
<img id="foo" src="images/image.png" alt="Show" height="10" width="18" align="absmiddle" onclick="function()" />
我有什么理由不能看到这个,但我可以使用firefox和chrome吗?
答案 0 :(得分:2)
你没有设置&#39; foo&#39;做任何事。你需要定义它。 Chrome和Firefox会自动为具有相同ID的元素分配变量。
var foo = document.getElementById('foo');
foo.onclick = false;