【发布时间】:2016-08-24 21:41:57
【问题描述】:
我有一个图像 (id="image1") 和一个 "a" 标记 (id="image1_tb"),它的作用就像一个用于更改图像类别的开关。 由于我要添加其他图像,因此我将“a”标签的 href 属性设置为“javascript:changeClass(image1)”并创建了一个如下所示的 javascript scipt:
function changeClass(id) {
if (document.getElementById(id).className == 'swb') {
document.getElementById(id).className = 'swthb';
document.getElementById(id+'_tb').innerHTML = 'Class 1'
} else {
document.getElementById(id).className = 'swb';
document.getElementById(id+'_tb').innerHTML = 'Class 2'
}
}
但是当我尝试通过单击文本或通过 Chrome 开发控制台调用它时,没有任何反应。事实证明,控制台输出“未捕获的 TypeError:无法设置属性 'className' of null”。如果我用实际的图像 id 手动替换“id”,它就可以工作。 我做错了什么?
【问题讨论】:
-
@blex 其实我就知道,我写代码的时候打错了。
标签: javascript html function call