CSS3+JavaScript实现翻页幻灯片效果


Posted in Javascript onJune 28, 2017

先上效果图

CSS3+JavaScript实现翻页幻灯片效果

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
      *{
        margin: 0;
        padding: 0;
      }
      #content{
        width: 500px;
        height: 300px;
        margin: 40px auto;
        position: relative;
        transform-style: preserve-3d;
      }
      #content>div{
        width: 100%;
        height: 100%;
        position: absolute;
        transform-origin: center bottom;
      }
      #content img{
        width: 100%;
        height: 100%;
      }
      #next{
        position: absolute;
        top:190px;
        left: calc(33% - 60px);
      }
      #prev{
        position: absolute;
        top: 190px;
        left: calc(68% + 30px);
      }
      @keyframes next{  //创建一个动画这是一个翻到下面的效果
        from{
          -wbelit-transform: perspective(1000px) rotateX(0deg); /* 开始位置是 0°*/
          opacity: 1; //初始透明为1
        }
        to{
          -webkit-transform: perspective(1000px) rotateX(-180deg); /*结束位置是 180°*/
          opacity: 0; //结束透明为0
        }
      }
      @keyframes prev{ //创建一个由上边翻到上边的动画
        0%{
          -webkit-transform: perspective(1000px) rotateX(180deg); /* 初始开始位置 */
          opacity:0;    //初始为透明
        }
        57%
        {
          -webkit-transform: perspective(1000px) rotateX(-16deg); /* 动画进行到 56% 的时候他为 -16° */
          opacity:1; //透明已经为1 了
        }
        66%
        {
          -webkit-transform: perspective(1000px) rotateX(14deg); /* 再回到 14° 的位置 */
        }
        74%
        {
          -webkit-transform: perspective(1000px) rotateX(-12deg); /* 再回到 -12°的位置 */
        }
        81%
        {
          -webkit-transform: perspective(1000px) rotateX(10deg); /* 再回到 10°的位置 */
        }
        87%
        {
          -webkit-transform: perspective(1000px) rotateX(-8deg); /* 再回到 -8°的位置 */
        }
        92%
        {
          -webkit-transform: perspective(1000px) rotateX(6deg); /* 再回到 6° 的位置 */
        }
        96%
        {
          -webkit-transform: perspective(1000px) rotateX(-4deg); /* 再回到 -4° 的位置 */
        }
        100%
        {
          -webkit-transform: perspective(1000px) rotateX(0deg); /* 最后回归 0° */
        }<br>



















      }
      .next{
        animation: next 1s ease 1 normal 0s; /* 执行向下的动画 */
        transform: rotateX(-180deg); /* 因为初始位置是0 但当你执行完动画还会回到原位 所以它转到哪里就把他设在哪里不要再让它回去了 */
        opacity: 0;
      }
      .prev{
        animation: prev 1.2s ease 1 normal 0s; /* 执行向上的动画 */
        transform: rotateX(0deg); /* 同上 */
        opacity: 1;
      }
    </style>
  </head>
  <body>
    <button id="next">←</button><button id="prev">→</button>
    <div id="content">
      <div class="prev"><img src="images/012.jpeg"></div> <!-- 设置默认的第一页 -->
      <div class="next"><img src="images/017.jpeg"></div>
      <div class="next"><img src="images/020.jpeg"></div>
      <div class="next"><img src="images/027.jpeg"></div>
      <div class="next"><img src="images/0df3d7ca7bcb0a46ce09bc1e6e63f6246b60afe9.jpg"></div>
    </div>
    <script>
      window.onload=function(){
        var next=document.getElementById("next");
        var prev=document.getElementById("prev");
        var content=document.getElementById("content");
        var oDiv=content.getElementsByTagName("div");
        var x=0;
        next.onclick=function(){  //当向下翻页时
          oDiv[x].setAttribute("class","next"); //第一个页 设置class名让他向下走去
          x++
          if(x>oDiv.length-1){
            x=0
          }
          oDiv[x].setAttribute("class","prev"); //++过后让他的下一个页面起来
        }
        prev.onclick=function(){    //同上只是++变--
          oDiv[x].setAttribute("class","next");
          x--
          if(x<0){
            x=oDiv.length-1
          }
          oDiv[x].setAttribute("class","prev");
        }
      }
    </script>
  </body>
</html>

以上所述是小编给大家介绍的CSS3+JavaScript实现翻页幻灯片效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
推荐30个新鲜出炉的精美 jQuery 效果
Mar 26 Javascript
使用apply方法处理数组的三个技巧[译]
Sep 20 Javascript
jquery实现文字由下到上循环滚动的实例代码
Aug 09 Javascript
javascript强大的日期函数代码分享
Sep 04 Javascript
js获得参数的getParameter使用示例
Feb 26 Javascript
jQuery实现延迟跳转的方法
Jun 05 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
Jul 31 Javascript
使用控制台破解百小度一个月只准改一次名字
Aug 13 Javascript
JavaScript的jQuery库中ready方法的学习教程
Aug 14 Javascript
flexslider.js实现移动端轮播
Feb 05 Javascript
JQuery实现图片轮播效果
May 08 jQuery
vue中实现左右联动的效果
Jun 22 Javascript
Node.js 8 中的重要新特性
Jun 28 #Javascript
Angular排序实例详解
Jun 28 #Javascript
基于JS对象创建常用方式及原理分析
Jun 28 #Javascript
Node.js实现文件上传的示例
Jun 28 #Javascript
iscroll-probe实现下拉刷新和下拉加载效果
Jun 28 #Javascript
JavaScript 获取元素在父节点中的下标(推荐)
Jun 28 #Javascript
JS中把函数作为另一函数的参数传递方法(总结)
Jun 28 #Javascript
You might like
又一个php 分页类实现代码
2009/12/03 PHP
phpmail类发送邮件函数代码
2012/02/20 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
2013/06/24 PHP
PHP中鲜为人知的10个函数
2014/02/28 PHP
PHP中使用addslashes函数转义的安全性原理分析
2014/11/03 PHP
php实现用户登陆简单实例
2017/04/04 PHP
PHP实现搜索时记住状态的方法示例
2018/05/11 PHP
php微信公众号开发之简答题
2018/10/20 PHP
PHP 扩展Memcached命令用法实例总结
2020/06/04 PHP
jQuery动态修改超链接地址的方法
2015/02/13 Javascript
浅谈JavaScript中指针和地址
2015/07/26 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
关于Jquery中的事件绑定总结
2016/10/26 Javascript
巧用canvas
2017/01/21 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
2017/02/15 Javascript
Boostrap栅格系统与自己额外定义的媒体查询的冲突问题
2017/02/19 Javascript
Angular 2父子组件数据传递之局部变量获取子组件其他成员
2017/07/04 Javascript
详解Node.js中的Async和Await函数
2018/02/22 Javascript
JavaScript fetch接口案例解析
2018/08/30 Javascript
javascript定时器的简单应用示例【控制方块移动】
2019/06/17 Javascript
[03:35]2018年度DOTA2最佳辅助位选手5号位-完美盛典
2018/12/17 DOTA
python元组操作实例解析
2014/09/23 Python
Python re模块介绍
2014/11/30 Python
python实现堆栈与队列的方法
2015/01/15 Python
Python获取邮件地址的方法
2015/07/10 Python
Python实现图片转字符画的示例
2017/08/22 Python
Django 实现图片上传和下载功能
2020/12/31 Python
纯css3显示隐藏一个div特效的具体实现
2014/02/10 HTML / CSS
Reformation官网:美国女装品牌
2018/09/14 全球购物
餐厅总经理岗位职责
2013/12/31 职场文书
会计专业自我评价
2014/02/12 职场文书
2014年政风行风工作总结
2014/11/22 职场文书
家庭暴力离婚起诉书
2015/05/18 职场文书
JS Canvas接口和动画效果大全
2021/04/29 Javascript
python使用PySimpleGUI设置进度条及控件使用
2021/06/10 Python
Golang 实现 WebSockets 之创建 WebSockets
2022/04/24 Golang