当前位置:首页 > 心得体会 > 正文内容

使用原生js实现点击切换图片(轮播图)效果

葱子9年前 (2017-05-04)心得体会5761

要实现的功能大致为:

点击两边的切换按钮,可以按顺序切换不同的图片

具体操作如下:

一、布局html

1、添加一个div容器

2、添加一个轮播图img标签

3.添加两个按钮img标签

二、css样式设置

1、设置div容器的宽高分别为400px /200px,居中显示;

2、设置轮播图img标签的宽高分别为400px /200px;

3、将按钮img标签分别设置到左右两侧,需要用到float属性和position属性。position属性这里设置为relative。再使用right/left、bottom属性来调整按钮位置;

三、js切换效果

1、构造一个数组imgarr来存储需要切换的图片地址src信息;

2、构造nextimg函数来实现切换next图片(向后切换)

这里注意,需要定义一个全局值i=0;

向后切换的效果分析:点击后图片地址会变化,且是前一个地址+1的形式。同时需要判断是否是最后一张图片。

所以:    function nextimg(){
                
                i++;
                if(i>=4){i=0;}
                img.src=imgsrc[i];    
            }

3、构造previmg函数来实现切换prev图片(向前切换)

向前切换的效果分析:点击后图片地址会变化,且是前一个地址-1的形式。同时需要判断是否是第一张图片。

所以:

function previmg(){
                i--;
                if(i<=0){i=3;}
                img.src=imgsrc[i];
                
            }

到此为止,效果就实现了。

 

全部代码如下:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
            .main{
                width: 400px;
                height: 200px;
                margin: 30px auto;
                overflow: hidden;
                
            }
            
            
#prev{
    position: relative;
    float: left;
    left: 10px;
    bottom:120px;
}
            
    #next{
    position: relative;
    float: right;
    right: 10px;
    bottom:120px;
}

            
            
            
        </style>
        
        
        
    </head>
    <body>
        <div class="main">
            
            <img src="img/01.png" alt="" imgid="0" id="imgon"/>
            <img src="img/u1.png" alt="" id="prev" onclick="previmg()"/>
            <img src="img/u0.png" alt="" id="next" onclick="nextimg()"/>
            
            
            
        </div>
        
        
        
        <script type="text/javascript">
            
            imgsrc=new Array();
            imgsrc[0]="img/01.png";
            imgsrc[1]="img/02.png";
            imgsrc[2]="img/03.png";
            imgsrc[3]="img/04.png";
            
            var i=0;
            var img=document.getElementById("imgon");
            function nextimg(){
                
                i++;
                if(i>=4){i=0;}
                img.src=imgsrc[i];    
            }
            
            
            function previmg(){
                i--;
                if(i<=0){i=3;}
                img.src=imgsrc[i];
                
            }
            
            
        </script>
        
    </body>
</html>
 

扫描二维码推送至手机访问。

版权声明:本文由葱子博客发布,如需转载请注明出处。

本文链接:https://www.aitiancheng.com/article-528.html

相关文章

从获取信任到放权,谈谈”资本的原始积累”

从获取信任到放权,谈谈”资本的原始积累”

一、初到公司,见识到内部派系斗争 14年4月份回到成都,当月便入职在成都软件园C区的一家公司。进公司后,是跟着当时的主管一起做事,首先做的当然是接管整个社区的运营。 在接下来的工作过程中,我和主...

小程序流量主如何开通?小程序流量主收益大吗

小程序流量主如何开通?小程序流量主收益大吗

小程序流量主变现的逻辑说到流量主,那么既然是流量主,当然是依靠广告展现、点击来变现。 依靠广告来变现,首先思考的第一位应该是你的流量有多少,这个并不是小程序上独有的,你做网站、写自媒体文章,能不能赚钱,赚多少钱都是依赖于你获取到的流量有多...

最近做新项目的一些心得体会

最近做新项目的一些心得体会

最近很少更新discuz网站相关的教程,主要是由于最近实在是太忙了,个人的事情,公司的事情,新项目的事情,简直是忙的心慌。 10月初换了新工作,一切都还在熟悉当中,新工作也在有条不紊的进行当中。  新项目的事情...

我的2016年总结之学习篇

我的2016年总结之学习篇

在2016年初的时候写了篇博文大致罗列了一下2016年自己想看的几本书。链接:我的2016书单 里面罗列的书籍有: 心理学-行为学:《怪诞行为学》——没有看 互联...

社区运营永远离不开马甲发帖回帖么?

问: 一个社区发展两年了 还需要每天马甲不停的发帖回帖是否正常? 马甲数据占总数据的三分一以上,所有运营专员大部分精力都在做这事? 这正常吗?   我的回答:...

记2017年第一次找工作面试

记2017年第一次找工作面试

16年的时候,现在的公司已经基本废了,但是由于担心买房子公积金、个税这些受到影响,所以一直没有认认真真的去找工作。 一直就拖到了现在。 17年开始后,我们在2月底将购房的事情定了下来,...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。