所以这个问题在谷歌上很难描述。长话短说,所有的东西似乎都在工作,除了图像没有从服务器上拉出来。我上下扫描了我的代码,甚至检查了同学的代码,却找不到问题。每当我从weblab服务器调用图像时,它们都会被拉出来,而不是在这里。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Slide Show</title>
<meta charset="UTF-8" />
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<script>
function switchImg(tools){
var t="";
var d="";
document.getElementById("tool").src= t;
document.getElementById("tool").alt= d;
if (tools==1){
t = "/tools/saw.jpg";
d = "Saw";
}
else if (tools==2){
t = "/tools/chisels.jpg";
d = "Chisels";
}
else if (tools==3){
t = "/tools/pitchfork.jpg";
d = "Pitchfork";
}
}
</script>
<style>
img{
display: block;
margin-left: auto;
margin-right: auto;
}
.buttons{
text-align: center;
}
</style>
</head>
<body>
<img id="tool" src="/tools/saw.jpg" height="248" width="364" alt="Saw"/>
<br/>
<div class="buttons">
<button type="button" onClick="switchImg(1);"> Saw </button>
<button type="button" onClick="switchImg(2);"> Chisels </button>
<button type="button" onClick="switchImg(3);"> Pitchfork </button>
</div>
<br/>
</body>
</html>误差


这就像img代码没有正确地切换src或alt一样。我希望这里的人能找到一个解决方案,或者在我的代码中找到我遗漏的东西。非常感谢。
发布于 2020-10-23 23:42:16
您需要在src条件块之后设置if和alt:
document.getElementById("tool").src = t;
document.getElementById("tool").alt = d;考虑以这种方式:
function switchImg(tools) {
var t = "";
var d = "";
if (tools == 1) {
t = "/tools/saw.jpg";
d = "Saw";
} else if (tools == 2) {
t = "/tools/chisels.jpg";
d = "Chisels";
} else if (tools == 3) {
t = "/tools/pitchfork.jpg";
d = "Pitchfork";
}
document.getElementById("tool").src = t;
document.getElementById("tool").alt = d;
}此外,缓存元素可能会提高性能:
var img = document.getElementById("tool");
img.src = t;
img.alt = d;https://stackoverflow.com/questions/64508545
复制相似问题