js+css3实现多行图片点击(自动)左右无缝轮播特效
/*效果图*/


HTML:    <div class="scroll">
       <div class="picbox">
        <ul class="piclist mainlist">
             <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg.jpg" class="pics" /></a>
                         <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                     <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg1.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                     <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg2.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                     <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg3.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                     <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg4.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                     <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg5.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                    <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
                    
                     <li class="goodlist">
                        <a class="scrolling_picture"><img src="data:images/timg1.jpg" class="pics" /></a>
                        <a class="title">安全联盟信誉企业</a>
                    </li>
        </ul>
        <ul class="piclist swaplist"></ul>
    </div>
    <div class="og_prev"></div>
    <div class="og_next"></div>
</div>
CSS:
* {
    margin:0;
    padding:0;
    list-style:none;
}
body {
    font-size:12px;
}
a {
    text-decoration:none;
}
.scroll {
    width:760px;
    margin:0 auto;
    position:relative;
    overflow:hidden;
}
.picbox {
    width:730px;
    height:340px;
    background:#fff;
    border:1px solid #DED7D1;
    overflow:hidden;
    position:relative;
    margin:15px;
}
.picbox ul {
    height:285px;
    padding-top:5px;
}
.piclist {
    position:absolute;
    left:0px;
    top:0px;
}
.piclist li.goodlist {
    width:221px;
    margin:10px 0;
    padding:0px 5px;
    margin-right:-1px;
    float:left;
    padding-left: 20px;
}
.piclist li.goodlist img {
    width:100%;
    height:120px;
}
.swaplist {
    position:absolute;
    left:-3000px;
    top:0px;
}
.og_prev, .og_next {
    width:30px;
    height:60px;
    background:url(../images/btn.png) no-repeat;
    position:absolute;
    top:152px;
    z-index:99;
    cursor:pointer;
}
.og_prev {
    background-position:0 0;
    left:0px;
}
.og_prev:hover {
    background-position:0 -60px;
}
.og_next {
    background-position:-30px 0;
    right:0px;
}
.og_next:hover {
    background-position:-30px -60px;
}
.goodlist img.pics {
    width:85px;
    height:135px;
    float:left;
    background:#fff url(../images/loading.gif) center center no-repeat;
}
.title {
    width:100%;
    height:22px;
    line-height:22px;
    display:block;
    color:#363636;
    text-align: center;
    margin-top: 10px;
}
.scrolling_picture{overflow:hidden; display:block;width:90%;}
JS:
$(function(){
    linum = $('.mainlist li').length;//图片数量
    w = linum/2 * 232;//ul宽度
    $('.piclist').css('width', w + 'px');//ul宽度
    $('.swaplist').html($('.mainlist').html());//复制内容
    
    $('.og_next').click(function(){
        
        if($('.swaplist,.mainlist').is(':animated')){
            $('.swaplist,.mainlist').stop(true,true);
        }
        
        if($('.mainlist li').length>4){//多于4张图片
            ml = parseInt($('.mainlist').css('left'));//默认图片ul位置
            sl = parseInt($('.swaplist').css('left'));//交换图片ul位置
            if(ml<=0 && ml>w*-1){//默认图片显示时
                $('.swaplist').css({left: '928px'});//交换图片放在显示区域右侧
                $('.mainlist').animate({left: ml - 928 + 'px'},'slow');//默认图片滚动                
                if(ml==(w-928)*-1){//默认图片最后一屏时
                    $('.swaplist').animate({left: '0px'},'slow');//交换图片滚动
                }
            }else{//交换图片显示时
                $('.mainlist').css({left: '928px'})//默认图片放在显示区域右
                $('.swaplist').animate({left: sl - 928 + 'px'},'slow');//交换图片滚动
                if(sl==(w-928)*-1){//交换图片最后一屏时
                    $('.mainlist').animate({left: '0px'},'slow');//默认图片滚动
                }
            }
        }
    })
    $('.og_prev').click(function(){
        
        if($('.swaplist,.mainlist').is(':animated')){
            $('.swaplist,.mainlist').stop(true,true);
        }
        
        if($('.mainlist li').length>4){
            ml = parseInt($('.mainlist').css('left'));
            sl = parseInt($('.swaplist').css('left'));
            if(ml<=0 && ml>w*-1){
                $('.swaplist').css({left: w * -1 + 'px'});
                $('.mainlist').animate({left: ml + 928 + 'px'},'slow');                
                if(ml==0){
                    $('.swaplist').animate({left: (w - 928) * -1 + 'px'},'slow');
                }
            }else{
                $('.mainlist').css({left: (w - 928) * -1 + 'px'});
                $('.swaplist').animate({left: sl + 928 + 'px'},'slow');
                if(sl==0){
                    $('.mainlist').animate({left: '0px'},'slow');
                }
            }
        }
    });
});
js+css3实现多行图片点击(自动)左右无缝轮播特效的更多相关文章
- react使用swiper,解决添加点击事件首位图片点击失效,解决轮播按钮被覆盖问题
		
JS部分 createSwiper1() { var option = { // slidesPerView: 5, slidesPerView: 3, centeredSlides:true, }; ...
 - js实现多行图片点击(自动)左右无缝轮播特效
		
/*效果图*/ HTML: <div class="scroll"> <div class="picbox"> ...
 - 分别用css3、JS实现图片简单的无缝轮播功效
		
本文主要介绍分别使用CSS3.JS实现图片简单无缝轮播功效: 一.使用CSS3实现:利用animation属性 (实现一张一张的轮播,肉眼只看见一张图片) HTML部分比较简单,两个div下包着几个i ...
 - 原生js和jquery实现图片轮播特效
		
本文给大家分享的是使用原生JS和JQ两种方法分别实现相同的图片轮播特效,十分的实用,也非常方便大家对比学习原生js和jQuery,有需要的小伙伴可以参考下. 1)首先是页面的结构部分对于我这种左右切换 ...
 - 原生js和jquery实现图片轮播特效(转)
		
本文给大家分享的是使用原生JS和JQ两种方法分别实现相同的图片轮播特效,十分的实用,也非常方便大家对比学习原生js和jQuery,有需要的小伙伴可以参考下. 1)首先是页面的结构部分对于我这种左右切换 ...
 - js和jquery实现图片无缝轮播的不同写法
		
多掌握一种方法总是会有好处的,学习编程就要多思考,举一反三 下面写一下实现图片自动播放的代码,由于学习的是javascript,代码量很大,所以又学习了jquery库的操作,非常简便 还有非常有逼格的 ...
 - js实现图片无缝轮播
		
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
 - 原生js写一个无缝轮播图插件(支持vue)
		
轮播图插件(Broadcast.js) 前言:写这个插件的原因 前段时间准备用vue加上网易云的nodejs接口,模拟网易云音乐移动端.因为想自己写一遍所有的代码以及加固自己的flex布局,所以没有使 ...
 - JQuery制作基础的无缝轮播与左右点击效果
		
在网页中我们想要的无缝轮播左右循环有好多好多中,这是我第一个轮播效果,也是最基础的,和大家分享一下,对于初学者希望你们能有所借鉴,对于大神我想让你们尽情的虐我给我宝贵的意见. 这个是我要的效果 进入正 ...
 
随机推荐
- Springboot之初入江湖
			
Hello,各位小伙伴大家好,我是小栈君. 今天的分享主题是关于Springboot主题分享,其实在写这个系列主题之前有想过一些关于分享技术的顺序问题,因为我在创建"IT干货栈"这 ...
 - 安装web3失败问题
			
① 首先可以先通过 npm cache verify 清理下缓存,在进行安装 ② 如果还是安装失败可以尝试 --- npm install web3@^0.20.0 或者 npm install ...
 - Node.js入门教程 第六篇 (连接使用MySql)
			
连接使用MySql 安装MySql模块: npm install mysql 创建连接: const mysql = require('mysql') // 连接 mysql 服务器 const co ...
 - 清除SQL Server Management Studio的最近服务器列表
			
C:\Users\dell\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.bin
 - JS基本数据类型和引用数据类型的区别及深浅拷贝
			
前言 首先我们先来了解一下什么叫栈堆,基本数据类型与引用数据类型 1.栈(stack)和堆(heap)stack为自动分配的内存空间,它由系统自动释放:而heap则是动态分配的内存,大小也不一定会自动 ...
 - Python3实用编程技巧进阶  ☝☝☝
			
Python3实用编程技巧进阶 ☝☝☝ 1.1.如何在列表中根据条件筛选数据 # 1.1.如何在列表中根据条件筛选数据 data = [-1, 2, 3, -4, 5] #筛选出data列表中大于等 ...
 - 因果推理的春天-实用HTE(Heterogeneous Treatment Effects)论文github收藏
			
一直以来机器学习希望解决的一个问题就是'what if',也就是决策指导: 如果我给用户发优惠券用户会留下来么? 如果患者服了这个药血压会降低么? 如果APP增加这个功能会增加用户的使用时长么? 如果 ...
 - SpringBoot2.x升级踩坑--新增Configuration property name限制
			
最近公司项目在做SpringBoot的升级,在升级过程中遇到了一些问题,简单记录一下,做个分享.另外,本文中的程序只为示例代码,并非公司生产环境代码. 遇到什么问题 从SpringBoot1.x升级到 ...
 - 利用Echarts实现全国各个省份数据占比,图形为中国地图
			
最近项目需求,需要一个对于全国各个省份的数据分析,图形最好是地图的样子,这样子更为直观. 最先想到的图表插件是Echarts,他的文档相对于阿里的G2,G6更加清晰一些.在Echarts 里找到的个 ...
 - [Luogu3878] [TJOI2010]分金币
			
题目描述 现在有n枚金币,它们可能会有不同的价值,现在要把它们分成两部分,要求这两部分金币数目之差不超过1,问这样分成的两部分金币的价值之差最小是多少? 输入输出格式 输入格式: 每个输入文件中包含多 ...