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

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

葱子8年前 (2017-05-04)心得体会5320

要实现的功能大致为:

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

具体操作如下:

一、布局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

相关文章

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

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

对于新建discuz网站的一些建议:X3.4、服务器、HTTPS

对于新建discuz网站的一些建议:X3.4、服务器、HTTPS

最近遇到比较多的站长,在做新站。 我发现很多人还是在使用discuz x3.2的版本,说实在的,我是不太建议这个时候使用X3.2的版本了。 就以我个人经验来给大家讲下,新建discuz网站的一些注意事项。 一、版本选择:强烈推荐使用d...

我运营一元夺宝类网站的一些心得体会

我运营一元夺宝类网站的一些心得体会

在16年8月左右,和朋友合计来做一个一元夺宝的网站,希望可以小赚一笔。当然,我希望的是通过正规化的操作来获利。   做一元夺宝类的网站,前提是你有大量的流量引入:一元夺宝是流量变现 我们当时有没有呢...

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

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

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

成功最快的捷径-听话照做少发挥

成功最快的捷径-听话照做少发挥

今天在卢松松博客上看到一篇博文标题就是《成功最快的捷径-模仿》,心有戚戚焉。 结合自己最近的一些实践操作来讲讲。成功的捷径就是跟着有结果的人学习 这个结果应该是正向的,有实际产出的。跟着有实际产出的人模仿学习,才能找到真正的发展路径...

关于996

近期很多关于996的讨论,连马老师都牵涉进来了。 996的工作制度很多是在互联网公司,很不幸,我工作这几年,确实还没有经历过996。  对于我来讲,我希望在我的工作中能够获得持久的技能和经验的增长,如果996的...

发表评论

访客

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