css部分

<style>
*{
margin:;
padding:;
}
.container{
width:100%;
height:353px;
margin-top: 20px;
}
.prev{
display: block;
width:50px;
height:50px;
background:url(img/prev.png);
position: absolute;
left: 110px;
top:192px;
z-index:;
}
.next{
display: block;
width:50px;
height:50px;
background:url(img/next.png);
position: absolute;
right:110px;
top:192px;
z-index:;
}
ul li{
position: absolute;
list-style: none;
display: none;
}
ul{position:relative;margin:0 auto;width:1000px;}
ul li img{width:100%;}
li.banner1{display:block;width:500px;left:100px;top:60px;z-index:}
li.banner2{display:block;width:599px;left:200px;top:40px;z-index:}
li.banner3{display:block;width:500px;right:100px;top:60px;z-index:}
</style>

html部分

<div class="container">
<a href="javascrpt:;" class="prev"></a>
<a href="javascrpt:;" class="next"></a>
<ul>
<li class="banner1"><img src="img/4.png" /></li>
<li class="banner2"><img src="img/1.png" /></li>
<li class="banner3"><img src="img/2.png" /></li>
<li><img src="img/3.png" /></li>
</ul>
</div>

JQuery部分

<script>
//0-1
//1-2
//2-3
//3-0 //0-3
//1-0
//2-1
//3-2 $(function(){
var arr = [];
$("ul>li").each(function(i,o){
arr.push({left:$(o).position().left,top:$(o).position().top,width:$(o).width(),zIndex:$(o).css("zIndex")});
});
var isPrev = true;
var prev_in = 3;
var prev_out = 2;
var next_out = 0;
var next_in = 3;
$(".prev").click(function(){
if(isPrev){
isPrev = false;
arr.push(arr[0]);
arr.shift();
$("ul>li").each(function(i,o){
if(i == prev_out){
$(o).fadeOut(200,function(){
isPrev = true;
});
}
else if(i == prev_in){
$(o).css({left:arr[i].left,top:arr[i].top,width:arr[i].width,zIndex:arr[i].zIndex}).fadeIn(200);
}
else{
$(o).css({zIndex:arr[i].zIndex}).animate({left:arr[i].left,top:arr[i].top,width:arr[i].width},200);
}
});
next_out = prev_in;
next_in = prev_out;
prev_in--;
prev_out--;
if(prev_out == -1){
prev_out = 3;
}
if(prev_in == -1){
prev_in = 3;
}
}
});
var isNext = true;
$(".next").click(function(){
if(isNext){
isNext = false;
arr.unshift(arr[arr.length-1]);
arr.pop();
$("ul>li").each(function(i,o){
if(i == next_out){
$(o).fadeOut(200,function(){
isNext = true;
});
}
else if(i == next_in){
$(o).css({left:arr[i].left,top:arr[i].top,width:arr[i].width,zIndex:arr[i].zIndex}).fadeIn(200);
}
else{
$(o).css({zIndex:arr[i].zIndex}).animate({left:arr[i].left,top:arr[i].top,width:arr[i].width},200);
}
});
prev_in = next_out;
prev_out = next_in;
next_out++;
next_in++;
if(next_out == 4){
next_out = 0;
}
if(next_in == 4){
next_in = 0;
}
}
});
});
</script>

JQuery实现旋转轮播图的更多相关文章

  1. jQuery自适应-3D旋转轮播图

    3D旋转轮播图 本例源于(站长之家实例http://sc.chinaz.com/jiaoben/170215391070.htm) 其他相似示例(https://www.cnblogs.com/inc ...

  2. 基于jQuery的移动轮播图(支持触屏)

    移动轮播图我看到两款, 一款是无线天猫的m.tmall.com,实现了无缝轮播. 一款是蘑菇街的,没有实现无缝轮播. 我自己重写一个,类似蘑菇街 <!doctype html> <h ...

  3. JS封装动画框架,网易轮播图,旋转轮播图

    JS封装动画框架,网易轮播图,旋转轮播图 1. JS封装运动框架 // 多个属性运动框架 添加回调函数 function animate(obj,json,fn) { clearInterval(ob ...

  4. 用jQuery实现轮播图效果,js中的排他思想

    ---恢复内容开始--- jQuery实现轮播图不用单独加载. 思路: a. 通过$("#id名");选择需要的一类标签,获得一个伪数组 b.由于是伪数组的原因,而对数组的处理最多 ...

  5. 用js和jQuery做轮播图

    Javascript或jQuery做轮播图 css样式 <style> a{ text-decoration:none; } .naver{ width: 100%; position:r ...

  6. WPF特效-实现弧形旋转轮播图

    原文:WPF特效-实现弧形旋转轮播图 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013224722/article/details/77004 ...

  7. JS-特效 ~ 05. 缓动框架兼容封装/回掉函数/兼容透明度/层级、旋转轮播图、正则表达式、验证表单注册账号、

    缓动函数中opcity  写百分值的值 JS一般不用小数运算,会照成精度丢失 元素的默*认透明度是 层级一次性赋值,不缓动 利用for…in为同一个父元素的子元素绑定属性 缓动框架兼容封装/回掉函数/ ...

  8. jQuery 简单滑动轮播图效果

    一般页面简单轮播图效果用jQuery制作更加简单.我们来看看以下效果是如何来进行制作的. 其html结构下所示: <div id="box">         < ...

  9. 自实现PC端jQuery版轮播图

    最近其他项目不是很忙,被安排给公司的官网项目做一个新的页面(之前没接触公司官网项目),其中有一个用到轮播图的地方,最开始想直接用swiper.js插件实现就好了,可是发现官网项目里之前都没有引入过sw ...

随机推荐

  1. SVN clean失败解决方法

    一.问题描述 1.svn 更新或者提交时,报错:svn cleanup failed–previous operation has not finished; run cleanup if it wa ...

  2. LOJ #6539 奇妙数论题

    不想咕太久..就随便找个题更一下 LOJ#6539 题意 求题面里那个式子 题解 有一个常用的小式子 $$\sum_{x|a,x|b}\varphi(x)=\gcd(a,b)$$ 用这个式子直接对题面 ...

  3. 【转】Java 通过JDBC连接Mysql数据库的方法和实例【图文说明】

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  4. easyui 菜单树搜索

    //树形菜单搜索方法    function searchTree(treeObj,parentNode,searchCon){        var children;        for(var ...

  5. Loading class `com.mysql.jdbc.Driver'. The new driver class is `com.mysql.cj.jdb 问题

    是因为最新的数据库驱动的原因,用较早的版本就可以了. <dependency> <groupId>mysql</groupId> <artifactId> ...

  6. redis集群伸缩【转】

    一:实验介绍 在不影响集群对外服务的情况下,可以为集群添加节点进行扩容,也可以下线部分节点进行缩容. 原理可以抽象为槽和对应数据在不同节点之间灵活移动. 如果希望加入一个节点来实现集群扩容时,需要通过 ...

  7. Revit二次开发封装族的替代方法

    使用草图平面:

  8. Python logging日志系统

    写我小小的日志系统 配置logging有以下几种方式: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文件, ...

  9. Ubuntu VMware workstation虚拟机清理缓存文件获得更大硬盘空间

    1 前言 VMware workstation 15 Player经常使用拖拉复制文件到虚拟机,从而导致了drag_and_drop特别大,占用了很多硬盘空间. fanbi@ubuntu:~/.cac ...

  10. C++入门篇六

    struct和class的访问权限:结构体,类 struct和class 是相同的,唯一的而不同,就是默认权限,struct是public,class默认是private class Animal { ...