'if...else' 不检查任何其他条件,直接跳到最后一个 'else' 语句
the 'if...else' is not checking any other conditions, directly skipping to last 'else' statement
i,m 调用 JavaScript 函数通过使用 if..else 语句更改其来源来更改图像。但它直接跳到最后一个 else 语句,所以图像只在第一张和最后一张图像之间交换
JavaScript函数:
function myfunction2() {
var image = document.getElementById("image");
//iterartion 1
if (image.src == "img1.jpg") {
image.src = "img2.jpg";
} else if (image.src == "img2.jpg") {
image.src = "img3.jpg";
} else if (image.src == "img3.jpg") {
image.src = "img4.jpg";
} else if (image.src == "img4.jpg") {
image.src = "img5.jpg";
} else if (image.src == "img5.jpg") {
image.src = "img1.jpg";
} else {
image.src = "img2.jpg";
}
}
html代码:
<div id="image-slider">
<img src="img1.jpg" id="image">
<div id="left-holder">
<img onclick="myfunction2()" src="arrow-left.png" height="49px" width="49px" class="left"/>
</div>
<div id="right-holder">
<img onclick="myfunction2()" src="arrow-right.png" height="49px" width="49px" class="right"/>
</div>
</div>
我在这里做错了什么?请帮助。
尝试使用 trim() 函数
function myfunction2() {
var image = document.getElementById("image");
image = image.trim();
//iterartion 1
if (image.src == "img1.jpg") {
image.src = "img2.jpg";
} else if (image.src == "img2.jpg") {
image.src = "img3.jpg";
} else if (image.src == "img3.jpg") {
image.src = "img4.jpg";
} else if (image.src == "img4.jpg") {
image.src = "img5.jpg";
} else if (image.src == "img5.jpg") {
image.src = "img1.jpg";
} else {
image.src = "img2.jpg";
}
}
我怀疑您的文本周围可能有空格
在您的 javascript 代码中 image.src 给出类似 "file:///C:/Users/guser/Desktop/img1.jpg" 的内容
因此,而不是 if(image.src == "img1.jpg") 使用 if(image.src.indexOf("img1.jpg") != -1)
这意味着 "img1.jpg" 存在于 image.src
的绝对路径中
i,m 调用 JavaScript 函数通过使用 if..else 语句更改其来源来更改图像。但它直接跳到最后一个 else 语句,所以图像只在第一张和最后一张图像之间交换
JavaScript函数:
function myfunction2() {
var image = document.getElementById("image");
//iterartion 1
if (image.src == "img1.jpg") {
image.src = "img2.jpg";
} else if (image.src == "img2.jpg") {
image.src = "img3.jpg";
} else if (image.src == "img3.jpg") {
image.src = "img4.jpg";
} else if (image.src == "img4.jpg") {
image.src = "img5.jpg";
} else if (image.src == "img5.jpg") {
image.src = "img1.jpg";
} else {
image.src = "img2.jpg";
}
}
html代码:
<div id="image-slider">
<img src="img1.jpg" id="image">
<div id="left-holder">
<img onclick="myfunction2()" src="arrow-left.png" height="49px" width="49px" class="left"/>
</div>
<div id="right-holder">
<img onclick="myfunction2()" src="arrow-right.png" height="49px" width="49px" class="right"/>
</div>
</div>
我在这里做错了什么?请帮助。
尝试使用 trim() 函数
function myfunction2() {
var image = document.getElementById("image");
image = image.trim();
//iterartion 1
if (image.src == "img1.jpg") {
image.src = "img2.jpg";
} else if (image.src == "img2.jpg") {
image.src = "img3.jpg";
} else if (image.src == "img3.jpg") {
image.src = "img4.jpg";
} else if (image.src == "img4.jpg") {
image.src = "img5.jpg";
} else if (image.src == "img5.jpg") {
image.src = "img1.jpg";
} else {
image.src = "img2.jpg";
}
}
我怀疑您的文本周围可能有空格
在您的 javascript 代码中 image.src 给出类似 "file:///C:/Users/guser/Desktop/img1.jpg" 的内容 因此,而不是 if(image.src == "img1.jpg") 使用 if(image.src.indexOf("img1.jpg") != -1)
这意味着 "img1.jpg" 存在于 image.src
的绝对路径中