这是runoob的一个例子,要实现点击灯泡实现打开或关闭,我一开始是这样做的:
window.onload = function(){
var light = document.getElementsByTagName('img')[0];
light.onclick = function(){
if(light.src = 'img/light_off.jpg'){
light.src = 'img/light_on.jpg';
}else{
light.src = 'img/light_off.jpg';
};
};
};
但是这样写,当灯泡变亮后就不会再变暗了,我不理解为什么,如果src不是img/light_off.jpg就应该执行else的部分不是吗?
-----HTML部分------
<img src="img/light_off.jpg" alt="photo1" />
------已解决--------
正确的代码:
window.onload = function(){
var light = document.getElementById('test');
light.onclick = function(){
if(light.src == 'http://127.0.0.1:8020/2017.8.31%20javascript/img/light_off.jpg'){
light.src = 'img/light_on.jpg'
}else{
light.src = 'img/light_off.jpg'
}
};
};
ps:楼下两位回答者说的都是正确的,我基础不扎实,感谢。另外我用alert测试发现light.src的值是一个绝对地址,因此把绝对地址放进去,判断是true后,执行正常。
你这是赋值 换成==或者===