CSS3动画效果结合JS的轮播
<style>
*{;}
#big{
width: 100%;
height: 280px;
}
.carousel-wrapper{
width: 500px;
height: 280px;
margin:100px auto;
perspective:600px;
}
#carousel{
width: 500px;
height: 280px;
list-style-type:none;
position:relative;
}
#carousel li{
position:absolute;
left:;
top:;
transition: all 1s ease 0s;
cursor: pointer;
}
.king{
z-index:;
}
.left1{
transform:rotateY(30deg) translateZ(-150px) translateX(-100px);
z-index:;
}
.left2{
transform:rotateY(40deg) translateZ(-300px) translateX(-200px);
z-index:;
}
.right1{
transform:rotateY(-30deg) translateZ(-150px) translateX(100px);
z-index:;
}
.right2{
transform:rotateY(-40deg) translateZ(-300px) translateX(200px);
z-index:;
}
.bench-warmer{
transform:translateZ(-200px);
opacity:;
}
.carousel-wrapper span{
width:60px;
height: 60px;
line-height: 60px;
text-align: center;
font-size: 50px;
color:white;
position:absolute;
left:-320px;
top:50%;
/*margin-top:-30px;*/
transform:translateY(-50%);
background-color: rgba(0, 0, 255, .5);
z-index:;
cursor:pointer;
}
.carousel-wrapper #right-btn{
right:-320px;
left:auto;
}
</style>
<script>
window.onload=function(){
var left_btn =document.getElementById("left-btn");
var right_btn=document.getElementById("right-btn");
var carousel =document.getElementById("carousel");
var lis =carousel.getElementsByTagName("li");
var lock =false;
//将类名保存在数组内
var classes=["left2","left1","king","right1","right2","bench-warmer","bench-warmer","bench-warmer","bench-warmer"];
right_btn.onclick=function(){
if(lock==false){
//设置定时器
lock=true;
setTimeout(function(){
lock=false;
},1000 )
classes.unshift(classes.pop());
//得到所有的类名
for(var i=0;i<classes.length;i++){
lis[i].className=classes[i];
}
}
}
left_btn.onclick=function(){
if(lock==false){
lock=true;
setTimeout(function(){
lock=false;
},1000)
//增删数组
classes.push(classes.shift());
// 遍历修改完的数组
for(var i=0;i<classes.length;i++){
lis[i].className=classes[i];
}
}
}
//设置一个定时器自动增删数组
var time=null;
//获取到最大的Div作为事件源
var big=document.getElementById("big")
function start(){
time=setInterval(function(){
classes.unshift(classes.pop());
//得到所有的类名
for(var i=0;i<classes.length;i++){
lis[i].className=classes[i];
}
},2000);
}
start()
big.onmouseover=function(){
clearInterval(time);
}
big.onmouseout=function(){
//当鼠标移除后再启动定时器
start()
}
}
</script>
<div id="big">
<div class="carousel-wrapper">
<ul id="carousel">
<li class="left2"><img src="data:images/50/1.jpg" alt=""></li>
<li class="left1"><img src="data:images/50/2.jpg" alt=""></li>
<li class="king"><img src="data:images/50/3.jpg" alt=""></li>
<li class="right1"><img src="data:images/50/4.jpg" alt=""></li>
<li class="right2"><img src="data:images/50/5.jpg" alt=""></li>
<li class="bench-warmer"><img src="data:images/50/6.jpg" alt=""></li>
<li class="bench-warmer"><img src="data:images/50/7.jpg" alt=""></li>
<li class="bench-warmer"><img src="data:images/50/8.jpg" alt=""></li>
<li class="bench-warmer"><img src="data:images/50/9.jpg" alt=""></li>
</ul>
<span id="left-btn"><</span>
<span id="right-btn">></span>
</div>
</div>
CSS3动画效果结合JS的轮播的更多相关文章
- js实现轮播图效果(附源码)--原生js的应用
1.js实现轮播图效果 <!DOCTYPE html><html lang="en"><head> <meta charset=" ...
- 使用 jQuery 中的淡入淡出动画,实现图片的轮播效果,每隔 2 秒钟切换一张图片,共 6 张图片
查看本章节 查看作业目录 需求说明: 使用 jQuery 中的淡入淡出动画,实现图片的轮播效果,每隔 2 秒钟切换一张图片,共 6 张图片,切换到第 6 张后从头开始切换,在图片的下方显示 6 个小圆 ...
- Bounce.js – 快速创建漂亮的 CSS3 动画效果
Bounce.js 是一个用于制作漂亮的 CSS3 关键帧动画的 JavaScript 库,使用其特有的方式生成的动画效果.只需添加一个组件,选择预设,然后你就可以得到一个短网址或者导出为 CSS 代 ...
- CSS3动画效果——js调用css动画属性并回调处理详解
http://www.jb51.net/css/258407.html 这篇文章主要详细介绍了CSS3动画效果回调处理,需要的朋友可以参考下 我们在做js动画的时候,很多时候都需要做回调处理,如在一个 ...
- 原生JS实现轮播图的效果
原生JS实现轮播图的效果: 只要缕清了全局变量index的作用,这个轮播图也就比较容易实现了:另外,为了实现轮这个效果,有几处clearInterval()必须写上.废话不多说,直接上代码,修复了几个 ...
- js图片轮播效果实现代码
首先给大家看一看js图片轮播效果,如下图 具体思路: 一.页面加载.获取整个容器.所有放数字索引的li及放图片列表的ul.定义放定时器的变量.存放当前索引的变量index 二.添加定时器,每隔2秒钟i ...
- tween.js是一款可生成平滑动画效果的js动画库。tween.js允许你以平滑的方式修改元素的属性值。它可以通过设置生成各种类似CSS3的动画效果。
简要教程 tween.js是一款可生成平滑动画效果的js动画库.相关的动画库插件还有:snabbt.js 强大的jQuery动画库插件和Tweene-超级强大的jQuery动画代理插件. tween. ...
- javascript效果:手风琴、轮播图、图片滑动
最近都没有更,就来几个效果充实一下. 都没有进行美化这步. 手风琴: 纯css: <!DOCTYPE html> <html lang="en"> < ...
- 原生js焦点轮播图
原生js焦点轮播图主要注意这几点: 1.前后按钮实现切换,同时注意辅助图2.中间的button随着前后按钮对应切换,同时按button也能跳转到相应的index3.间隔调用与无限轮播.4.注意在动画时 ...
随机推荐
- jsp页面无法解析EL表达式
从eclipse迁移到idea,真是各种被坑. 今天遇到的jsp无法解析EL,页面直接就显示${xxx}好坑爹 Root cause:idea生成的web.xml 的web-app版本居然是2.3,2 ...
- 高可用Hadoop平台-Flume NG实战图解篇
1.概述 今天补充一篇关于Flume的博客,前面在讲解高可用的Hadoop平台的时候遗漏了这篇,本篇博客为大家讲述以下内容: Flume NG简述 单点Flume NG搭建.运行 高可用Flume N ...
- python---进程、线程
一.进程 二.线程 1,使用Thread类创建线程 #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'zhoufeng' impor ...
- ADOConnectoin事务和存储过程中的Begin tran commit
一直以来我都是在存储过程中使用事务 create proc usp_proc begin begin tran ..... commit end 那么我现在问一个问题,如果在BCB的代码中写这样的代 ...
- 如何用grunt压缩文件
grunt-cli 全局装完之后,就可以给每个项目装grunt了. 1.先把package.json和Gruntfile.js拷到项目下(PS:这两个文件是每个项目装grunt的时候必带的) 2. ...
- Oracle数据库根据时间查询
' and trans_dt between to_date('2010-12-01 00:00:00','YYYY-MM-DD HH24:MI:SS') and to_date('2011-12-3 ...
- SDF文件的用途
标准延迟格式(英语:Standard Delay Format, SDF)是电气电子工程师学会关于集成电路设计中时序描述的标准表达格式.在整个设计流程中,标准延迟格式有着重要的应用,例如静态时序分析和 ...
- 各版本CRM所需端口号
以下是微软官方提供的CRM端口号列表,收藏一下: 4.0 :https://msdn.microsoft.com/en-us/library/dd979226(v=crm.6).aspx This s ...
- man ascii
Linux 2.6 - man page for ascii (linux section 7) - Unix & Linux Commands Linux 2.6 - man page fo ...
- Spring Framework------>version4.3.5.RELAESE----->Reference Documentation学习心得----->Spring Framework中web相关的知识(概述)
Spring Framework中web相关的知识 1.概述: 参考资料:官网documentation中第22小节内容 关于spring web mvc: spring framework中拥有自 ...