好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

JS实现点击button按钮切换图片

JS实现点击button按钮切换图片的具体代码,供大家参考,具体内容如下

放暑假在家打算学习html/css/js制作网页,只有html/css的一些基础。实现效果如图:

这个网页很简单,是用Dreamweaver写的,但是是通过自己做的,算是对JS的一个入门案列。

最初的想法是是做一轮播效果,但是刚开始学JS发现有很多问题,所以就做了一个简单的图片切换。

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>

JS部分:

<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部分:

*{
? ? 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;
}

这里面有两个关键点,一是如何隐藏图片,二是button按钮点击和样式。

1.图片的隐藏,我最初想的是用hidden来实现图片的隐藏,设置hidden属性的真假值来实现,但是发现只要给某个标签设置hidden,这个标签就不会显示,我不知道可以通过JS删除和添加hidden属性,因此我就改用 style.display="none" 和 style.display="inline" 来实现隐藏和显示。 style.display="none" 会隐藏该标签,而且隐藏后该标签不占位。后来我又查找发现可以通过 a.style.visibility="hidden"; 和 a.style.visibility="visible"; 来实现隐藏和显示, a.style.visibility="hidden"; 方法隐藏了该标签,但是该标签还是会占位。

2.第二个就是button属性,主要的问题时button样式的问题,如何才能做一个好看的button,通过查找找到了设置button相关的值。

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; 按钮边框圆角

接下来就是想办法实现轮播效果了,慢慢来吧!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

查看更多关于JS实现点击button按钮切换图片的详细内容...

  阅读:35次