我目前的代码存在:
<img id="fixedScreenimg" src="img/fixedScreen.jpg" class="img-responsive" alt="">
<script>
function pictureChange(){
if(fixedScreenimg.src == "img/homeScreen.png"){
document.getElementById("fixedScreenimg").src="img/fixedScreen.jpg");
}else{
document.getElementByID("fixedScreenimg").src="img/homeScreen.png");
}
}
</script>
如您所见,我试图检查元素的图像源是否与图像的给定路径匹配,如果是,则在按下按钮时更改图像的结果。但是,这似乎不起作用。
我试图使用getAttribute等。
任何指针?
感谢。
答案 0 :(得分:1)
错误很少:
ID
代替Id
函数中的getElementById
。
var elem = document.getElementById('fixedScreenimg'),
btn = document.getElementById('btn');
function pictureChange() {
if (elem.src == "img/homeScreen.png") {
document.getElementById("fixedScreenimg").src = "img/fixedScreen.jpg";
} else {
document.getElementById("fixedScreenimg").src = "img/homeScreen.png";
}
console.log(elem.src);
}
btn.addEventListener('click', pictureChange);
<img id="fixedScreenimg" src="img/fixedScreen.jpg" class="img-responsive" alt="">
<button id='btn'>Change src</button>
答案 1 :(得分:0)
您在行尾添加了一个括号
document.getElementById("fixedScreenimg").src="img/fixedScreen.jpg";
答案 2 :(得分:0)
您实际上是在添加右括号)
尝试以下方法:
function pictureChange(){
var elem = document.getElementById("fixedScreenimg");
if(elem.src === "img/homeScreen.png"){
elem.src="img/fixedScreen.jpg";
}else{
elem.src="img/homeScreen.png";
}
}
答案 3 :(得分:0)
首先声明fixedScreenimg
是什么,以及2个语句中的括号
<img id="fixedScreenimg" src="img/fixedScreen.jpg" class="img-responsive" alt="">
<script>
function pictureChange(){
var fixedScreenimg = document.getElementById("fixedScreenimg");
if(fixedScreenimg.src == "img/homeScreen.png"){
fixedScreenimg.src="img/fixedScreen.jpg";
}else{
fixedScreenimg.src="img/homeScreen.png";
}
}
</script>
答案 4 :(得分:0)
如果条件
,请尝试使用单行function pictureChange() {
var elem = document.getElementById("fixedScreenimg");
elem.src = (elem.src == "img/homeScreen.png") ? "img/fixedScreen.jpg" : "img/homeScreen.png";
}
<img id="fixedScreenimg" src="img/fixedScreen.jpg" class="img-responsive" alt="">