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.注意在动画时 ...
随机推荐
- 《CoffeeScript应用开发》学习:第三章-构建简单的应用程序
字符串插值 CoffeeScript提供了一种更好的构建字符串的解决方案.在双引号字符串(单引号无效)中使用#{}包含一个动态的值. str = 'Hello, CoffeeScript.' cons ...
- Visual Studio 2013 always switches source control plugin to Git and disconnect TFS
A few days ago, I've been facing a strange behavior with Visual Studio 2013. No matter what solu ...
- webpack配置备份
package.json: { "name": "webpackTest", "version": "1.0.0", & ...
- 使用Axis2实现WebService的发布和调用
一.Axis2的下载和安装 1.可从http://ws.apache.org/axis2/ 下载Axis2的最新版本: 可以下载如下三个zip包: axis2-1.7.3-bin.zip(用 ...
- Opencl 并行求和
上周尝试用opencl求极大值,在网上查到大多是求和,所谓的reduction算法.不过思路是一样的. CPP: ; unsigned ; ; ; int nGroup = nGroupSize / ...
- 如何定位死循环或高CPU使用率(linux)
如何定位死循环或高CPU使用率(linux) 确定是CPU过高 使用top观察是否存在CPU使用率过高现象 找出线程 对CPU使用率过高的进程的所有线程进行排序 ps H -e -o pid,tid ...
- 使用vagrant创建虚拟机
关于vagrant,维基百科给出了定义:"Vagrant is an open-source software product for building and maintaining po ...
- InnoDB is limited to row-logging when transaction isolation level is READ COMMIT
分析: http://blog.csdn.net/lingli219/article/details/46372737 解决办法: http://niuzhenxin.iteye.com/blog/1 ...
- MYBATIS 文档
http://www.mybatis.org/mybatis-3/zh/index.html
- Linux下MySQL数据库常用基本操作 一
1.显示数据库 show databases; 2.选择数据库 use 数据库名; 3.显示数据库中的表 show tables; 4.显示数据表的结构 describe 表名; 5.显示表中记录 S ...