JavaScript实现点击按钮切换图片的完整代码与样式详解
本文介绍如何使用JavaScript、HTML和CSS实现点击按钮切换图片的功能。文章详细解析了通过JS控制图片显示与隐藏的两种方法,包括利用display属性和visibility属性,并提供了美化按钮的CSS代码,如去除边框、添加阴影和圆角等效果,适合前端初学者参考。
以下是使用JavaScript实现点击按钮切换图片的具体代码,供读者参考。
图片切换功能实现概述
暑假期间在家学习HTML、CSS和JavaScript以制作网页,目前仅具备HTML和CSS的基础知识。实现效果如图所示。

该网页制作相对简单,使用Dreamweaver编写,但完全由个人独立完成,作为JavaScript的入门案例。
最初的构想是实现轮播效果,但由于刚开始学习JavaScript,发现存在诸多问题,因此改为制作一个较为简单的图片切换功能。
HTML结构代码
HTML的body部分代码如下:
<body>
<h1>JS实现图片的切换</h1>
<div class="container">
<div class="one">
<div class="one-left">
<button id="pre"><b><</b></button>
</div>
<div class="one-center">
<ul>
<li style="display:none" id="a"><img src="images/1.jpg" width="600" height="300"></li>
<li style="display:none" id="b"><img src="images/2.jpg" width="600" height="300"></li>
<li style="display:none" id="c"><img src="images/3.jpg" width="600" height="300"></li>
<li style="display:block" id="d"><img src="images/4.jpg" width="600" height="300"></li>
</ul>
</div>
<div class="one-right">
<button id="next"><b>></b></button>
</div>
</div>
</div>
</body>JavaScript逻辑代码
JavaScript部分代码如下:
<script language="javascript">
var a=document.getElementById("a");
var b=document.getElementById("b");
var c=document.getElementById("c");
var d=document.getElementById("d");
var b1=document.getElementById("pre");
var b2=document.getElementById("next");
var num=4;
b1.onclick=function(){
num--;
if(num<1)
num=4;
panduan();
}
b2.onclick=function(){
num++;
if(num>4)
num=1;
panduan();
}
function panduan(){
if(num==1){
a.style.display="block";
b.style.display="none";
c.style.display="none";
d.style.display="none";
}
if(num==2){
a.style.display="none";
b.style.display="block";
c.style.display="none";
d.style.display="none";
}
if(num==3){
a.style.display="none";
b.style.display="none";
c.style.display="block";
d.style.display="none";
}
if(num==4){
a.style.display="none";
b.style.display="none";
c.style.display="none";
d.style.display="block";
}
}
</script>CSS样式代码
CSS部分代码如下:
*{
margin:0;
padding:0;
}
h1{
text-align:center;
}
li{
list-style:none;
float:left;
}
.container{
width:1000px;
height:1000px;
margin:0 auto;
}
.one{
width:700px;
height:400px;
margin:100px auto;
}
.one-center{
width:600px;
height:300px;
float:left;
}
.one-left{
width:50px;
height:300px;
float:left;
}
.one-right{
width:50px;
height:300px;
float:right;
}
button{
width:50px;
height:300px;
background-color:#999;
border:none;
outline:none;
}
button:hover{
background-color:#666;
}关键技术点解析
实现过程中有两个关键点:一是如何隐藏图片,二是按钮的点击事件与样式设置。
图片隐藏方法对比
首先是图片的隐藏。最初尝试使用hidden属性,通过设置其真假值来控制显示,但发现一旦给标签设置hidden,该标签即不显示。由于不确定如何通过JavaScript删除或添加hidden属性,最终改用style.display="none"和style.display="inline"来实现隐藏和显示。其中style.display="none"会隐藏标签,且隐藏后该标签不占据页面空间。随后查阅资料发现,也可以通过a.style.visibility="hidden";和a.style.visibility="visible";来实现隐藏和显示,a.style.visibility="hidden";方法虽然隐藏了标签,但该标签仍会占据页面空间。
按钮样式美化设置
其次是按钮属性的处理,主要涉及按钮样式的设置,旨在制作美观的按钮。通过查阅资料,找到了设置按钮相关属性的方法。
使用border:none; 设置按钮无边框。
使用outline:none;消除按钮点击后出现的表示被点击状态的边框。
使用background:url(...)设置按钮背景图片。
使用text-shadow: 0 1px 1px rgba(0,0,0,.3);添加文字阴影。
使用box-shadow: 0 5px 7px rgba(0,0,0,.2);添加按钮阴影。
使用border-radius:15px;设置按钮边框圆角。
接下来将尝试实现轮播效果,逐步推进学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
JavaScript零基础入门:从环境搭建到运行第一段代码
2026-11-05 15:29:58
HTML链接中javascript:void(0)的作用及现代替代方案
2026-11-05 10:07:47
在线调试 JS 时怎么引入 jQuery 或 Vue 等第三方库
2026-11-05 08:53:56
原生JavaScript实现简易颜色选择器原理与代码
2026-11-03 23:22:19
JS原生表单序列化:FormData与URLSearchParams用法详解
2026-11-03 23:13:21
