JS实现点击一个按钮更换图片

比如我有三张图片在一个文件夹下,现在网页中只显示DT1.JPG这张,如何实现点击一个按钮就让DT1的位置上显示下一张图片,我想的
<script type="text/javascript">
function fd(){
img1.src = "..\images/DT2.JPG"
}
<div class="DT">
<div id="img1" ><img src="..\images/DT1.JPG" /></div>
</div>
<div style="text-align:center"><input type="button" id="b1" value=" 放大 " onclick="fd();" />
<input type="button" id="b2" value=" 缩小 " onclick="sx();" /></div>
似乎完全没效,谁写个

你的代码差在少了"选择元素"这一步。

img1.src = "..\images/DT2.JPG"这一步是没有作用的,因为img1你还没有定义。

正确的方法是让图片元素的id是img1,然后

document.getElementById('img1').src = "..\images/DT2.JPG"

这样进行赋值。

document.getElementById('img1')这一步的作用就是选择图片元素。

这是针对此问题的测试页面

代码如下

<div class="DT">

<div>

<img id="img1" src="https://img.alicdn.com/bao/uploaded/i3/2276233074/TB20r1QbFXXXXX3XXXXXXXXXXXX_!!2276233074.jpg_270x270.jpg"

/>

</div>

</div>

<div style="text-align:center">

<input type="button" id="b1" value=" 放大 " onclick="fd();" />

<input type="button" id="b3" value="还原 " onclick="hy();" />

<input type="button" id="b2" value=" 缩小 " onclick="sx();" />

</div>

function fd() {

document.getElementById('img1').src = "https://img.alicdn.com/bao/uploaded/i3/2276233074/TB20r1QbFXXXXX3XXXXXXXXXXXX_!!2276233074.jpg_400x400.jpg"

}

function sx() {

document.getElementById('img1').src = "https://img.alicdn.com/bao/uploaded/i3/2276233074/TB20r1QbFXXXXX3XXXXXXXXXXXX_!!2276233074.jpg_180x180.jpg"

}

function hy() {

document.getElementById('img1').src = "https://img.alicdn.com/bao/uploaded/i3/2276233074/TB20r1QbFXXXXX3XXXXXXXXXXXX_!!2276233074.jpg_270x270.jpg"

}

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-14

1、编写html内容,如下:

 <img border="0" alt="XXX" src="1.jpg" id="bbb"/><br><br>
 <input type="button" value="点击切换" onclick="changeImg();"/>

展示效果:

点击切换按钮会在两种不同的图片之间进行切换。

2、编写js代码,通过getElementById方法获取到图片所在的img节点对象,通过判断当前显示的图片从而替换显示不同的图片:

function changeImg() {
var obj = document.getElementById("bbb");
if (obj.getAttribute("src") == "1.jpg") {
obj.setAttribute("src", "2.jpg");
} else {
obj.setAttribute("src", "1.jpg");
}

}

点击之后切换另外一种图片:

第2个回答  2014-03-16
那个fd函数里的img1没有声明,var img1 = document.getElementById("img1");
试试看
第3个回答  2017-12-22

不谢,叫我活雷锋

第4个回答  2014-03-16
<div>
<img id="img" src="../images/DT1.jpg" />
</div>
<input type="button" value="放大" onclick="return ch('fd');"/>
<input type="button" value="缩小" onclick="return ch('sx');"/>
<script language="javascript">
        //我就写了一个函数,根据不同的按钮传的参数来执行,你要分成2个函数也行。
function ch(btv) {
var srcStr = document.getElementById("img");
var imgNum = parseInt(srcStr.src.substr(-5,1));
if (btv == 'fd') {
if (imgNum < 3) {
return srcStr.src = "../images/DT"+(imgNum+1)+".jpg";  
} else {
return false;
}
} else {
if (imgNum > 1) {
return srcStr.src = "../images/DT"+(imgNum-1)+".jpg";  
} else {
return false;
}
}
}
</script>

本回答被提问者采纳
相似回答