点击左上角的按钮前后切换

效果图:
代码如下:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{margin:0; padding:0; list-style:none;}
ul{
width:300px;
height:300px;
margin:100px auto;
position:relative;
-webkit-transform-style:preserve-3d;
perspective:800px;
}
ul li{
position:absolute;
top:0; left:0;
width:100%;
height:100%;
text-align:center;
line-height:300px;
font-size:50px;
background:#399;
border:1px solid #000;
opacity:0;
}
.l2{
opacity:0;
-webkit-transform: translate(-280px,0) rotateY(45deg);
z-index:3;
}
.l1{
opacity:1;
-webkit-transform: translate(-220px,0) rotateY(45deg);
z-index:4;
}
.cur{
opacity:1;
-webkit-transform:translateZ(50px);
z-index:5;
}
.r1{
opacity:1;
-webkit-transform: translate(220px,0) rotateY(-45deg);
z-index:4;
}
.r2{
opacity:0;
-webkit-transform: translate(280px,0) rotateY(-45deg);
z-index:3;
}
</style>
<script>
window.onload = function(){
var oPrev = document.querySelector('.prev_btn');
var oNext = document.querySelector('.next_btn');
var aLi = document.querySelectorAll('ul li');
var aClass = [];
for(var i=0;i<aLi.length;i++){
aClass[i] = aLi[i].className;
}
var bOk = false;
oPrev.onclick = function(){
if(bOk)return;
bOk = true;
aClass.push(aClass.shift());
change();
};
oNext.onclick = function(){
if(bOk)return;
bOk = true;
aClass.unshift(aClass.pop());
change();
};
function change(){
for(var i=0;i<aLi.length;i++){
aLi[i].style.WebkitTransition = '.5s all ease';
aLi[i].className = aClass[i];
}
var oCur = document.querySelector('.cur');
function tranEnd(){
oCur.removeEventListener('transitionend',tranEnd,false);
bOk = false;
}
oCur.addEventListener('transitionend',tranEnd,false);
}
};
</script>
</head>
<body>
<input type="button" value="prev" class="prev_btn" />
<input type="button" value="next" class="next_btn" />
<ul>
<li class="l2">0</li>
<li class="l1">1</li>
<li class="cur">2</li>
<li class="r1">3</li>
<li class="r2">4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
<li>11</li>
<li>12</li>
<li>13</li>
</ul>
</body>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js实现3d展示效果
# js实现3d效果
# js实现3d翻转效果
# 纯JS实现旋转图片3D展示效果
# JS实现3D图片旋转展示效果代码
# js模拟3D场景效果代码打包
# js+vml创建3D页面效果代码
# js实现3D图片逐张轮播幻灯片特效代码分享
# 原生javascript+css3编写的3D魔方动画旋扭特效
# JS实现的3D拖拽翻页效果代码
# 基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转
# 基于javascript html5实现3D翻书特效
# js实现3D图片环展示效果
# perspective
# preserve
# top
# absolute
# li
# transform
# auto
# height
# webkit
# relative
# position
# solid
# border
# translate
# opacity
# font
# line
# left
# background
# size
相关文章:
活动邀请函制作网站有哪些,活动邀请函文案?
如何通过VPS建站实现广告与增值服务盈利?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
*服务器网站为何频现安全漏洞?
如何通过NAT技术实现内网高效建站?
导航网站建站方案与优化指南:一站式高效搭建技巧解析
如何设计高效校园网站?
如何在宝塔面板中创建新站点?
做企业网站制作流程,企业网站制作基本流程有哪些?
实例解析Array和String方法
行程制作网站有哪些,第三方机票电子行程单怎么开?
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
视频网站制作教程,怎么样制作优酷网的小视频?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
如何在Golang中使用replace替换模块_指定本地或远程路径
香港服务器网站推广:SEO优化与外贸独立站搭建策略
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
教程网站设计制作软件,怎么创建自己的一个网站?
内网网站制作软件,内网的网站如何发布到外网?
,网站推广常用方法?
如何高效利用200m空间完成建站?
香港服务器如何优化才能显著提升网站加载速度?
如何用PHP快速搭建CMS系统?
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
建站之星安装提示数据库无法连接如何解决?
建站主机选购指南:核心配置优化与品牌推荐方案
专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?
如何快速搭建个人网站并优化SEO?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
建站之星展会模板:智能建站与自助搭建高效解决方案
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
已有域名能否直接搭建网站?
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
建站DNS解析失败?如何正确配置域名服务器?
上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?
建站之星安装后如何自定义网站颜色与字体?
ui设计制作网站有哪些,手机UI设计网址吗?
定制建站流程解析:需求评估与SEO优化功能开发指南
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
家庭建站与云服务器建站,如何选择更优?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
如何选择网络建站服务器?高效建站必看指南
山东云建站价格为何差异显著?
建站之星如何通过成品分离优化网站效率?
Thinkphp 中 distinct 的用法解析
如何选择CMS系统实现快速建站与SEO优化?
建站上传速度慢?如何优化加速网站加载效率?
*请认真填写需求信息,我们会在24小时内与您取得联系。