javaScript+turn.js实现图书翻页效果实例代码

yizhihongxing

JavaScipt + turn.js 实现图书翻页效果实例

介绍

在网站开发中,我们经常需要将一些电子书或者pdf格式的文档转化为网页形式,同时保留原有的阅读体验,这时候实现图书翻页效果就显得尤为重要。

turn.js 是一个基于 JQuery 的图书翻页插件,通过 turn.js 插件,我们可以方便快捷地实现 Web 端的图书翻页效果。

本文将讲解 turn.js 的使用方式。

实现步骤

  1. 下载 turn.js:从 GitHub 上下载 turn.js 文件,将 turn.js 和 turn.css 文件上传至服务器,并在页面头部引入 css 和 js 文件。
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>图书翻页效果</title>
    <link rel="stylesheet" href="path/to/turn.css">
    <script src="path/to/jquery.min.js"></script>
    <script src="path/to/turn.js"></script>
</head>
<body>

</body>
</html>
  1. 组织 HTML 结构:turn.js 将一个页面嵌入在一个 div 元素中,每个页面需要使用一个 div 元素包裹。例如下面的例子:
<div class="magazine-viewport">
  <div class="container">
    <div class="magazine">
      <div>Page 1</div>
      <div>Page 2</div>
      <div>Page 3</div>
      <div>Page 4</div>
    </div>
  </div>
</div>
  1. 初始化 turn.js:在页面加载完成后,使用 turn() 函数对元素进行初始化。例如:
$(window).ready(function() {
  $('.magazine').turn({
    display: 'double',
    acceleration: true,
    gradients: !$.isTouch,
    elevation:50,
    when: {
      turned: function(e, page) {
        console.log('Current view: ', $(this).turn('view'));
      }
    }
  });
});
  1. 配置选项:通过配置选项可以实现更多自定义的效果。例如:
$('.magazine').turn({
  display: 'double',
  acceleration: true,
  gradients: !$.isTouch,
  elevation:50,
  when: {
    turned: function(e, page) {
      console.log('Current view: ', $(this).turn('view'));
    }
  }
});

效果示例

示例一

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>图书翻页效果</title>
    <link rel="stylesheet" href="http://localhost/jquery-turnjs/css/turn.css">
    <script src="http://localhost/jquery-turnjs/js/jquery.min.js"></script>
    <script src="http://localhost/jquery-turnjs/js/turn.js"></script>
</head>
<body>
  <div class="magazine-viewport">
    <div class="container">
      <div class="magazine">
        <div><img src="http://localhost/jquery-turnjs/img/1.jpg" /></div>
        <div><img src="http://localhost/jquery-turnjs/img/2.jpg" /></div>
        <div><img src="http://localhost/jquery-turnjs/img/3.jpg" /></div>
        <div><img src="http://localhost/jquery-turnjs/img/4.jpg" /></div>
        <div><img src="http://localhost/jquery-turnjs/img/5.jpg" /></div>
        <div><img src="http://localhost/jquery-turnjs/img/6.jpg" /></div>
      </div>
    </div>
  </div>

  <script type="text/javascript">
    $(window).ready(function() {
      $('.magazine').turn({
        display: 'double',
        acceleration: true,
        gradients: !$.isTouch,
        elevation:50,
        when: {
          turned: function(e, page) {
            console.log('Current view: ', $(this).turn('view'));
          }
        }
      });
    });
  </script>
</body>
</html>

将以上代码复制到一个 html 文件中,将其中的路径信息替换为自己的本地文件路径,然后用浏览器打开该文件即可看到效果。

示例二

```html





图书翻页效果


javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码
javaScript+turn.js实现图书翻页效果实例代码

  • 用css给tbody加垂直滚动条的具体思路及样式代码

    给 tbody 元素添加垂直滚动条是一个常见需求,可以通过以下步骤实现: 设置最外层容器的高度:首先,我们需要确定外层容器的高度。一般情况下,我们可以将其设置为固定高度或相对于视口高度的百分比值。 示例代码: .container { height: 400px; /*设置容器高度*/ } 给 tbody 设置高度和 overflow-y: auto:接着,…

    css 2023年6月10日
    00
  • Web移动端布局那些事

    下面我将详细讲解“Web移动端布局那些事”的完整攻略,包含以下几个步骤: 1. 了解移动端布局常用的单位 在进行移动端布局之前,我们需要了解移动端常用的单位。在移动端布局中,我们经常使用的单位主要有以下两种: rem:相对于根元素的字体大小。如根元素font-size:16px,则1rem=16px vw/vh:相对于屏幕宽度和高度的百分比。如宽度为100v…

    css 2023年6月10日
    00
  • CSS实现一个简单loading动画效果

    让我来详细讲解一下“CSS实现一个简单loading动画效果”的完整攻略。 1. 利用CSS动画实现loading效果 CSS动画提供了一种简单又流畅的方式来实现loading效果,我们可以利用CSS3的@keyframes关键字结合transform属性和animation属性来创建一个简单的loading效果。 1.1 创建loading图形 首先,我们…

    css 2023年6月10日
    00
  • 浅谈vue中慎用style的scoped属性

    在Vue框架中,使用style标签的时候,可以使用scoped属性,这个属性的作用是控制所写样式只作用于当前组件内部,不会污染其他组件的样式,防止样式冲突。但是在使用scoped属性时,有些细节需要注意。 不慎用scoped属性带来的问题 在使用scoped属性时,需要注意,这个属性只能控制当前组件内样式与其他组件的样式之间的影响,但是对于子组件中的样式或全…

    css 2023年6月10日
    00
  • vue video和vue-video-player实现视频铺满教程

    让我来介绍如何使用Vue Video和Vue-Video-Player在网站中实现视频全屏播放。 第一步是将Vue Video和Vue-Video-Player添加到项目中。您可以使用npm或yarn来完成此操作。在终端中输入以下命令: npm install vue-video@5.0.2 –save npm install vue-video-play…

    css 2023年6月10日
    00
  • springboot2中session超时,退到登录页面方式

    在Spring Boot 2中,控制Session超时并重定向到登录页面的方式有多种。下面是其中一种完整攻略: 1. 设置Session超时时间 在application.properties文件中添加以下配置,设置Session超时时间: server.servlet.session.timeout=30m 表示Session超时时间为30分钟。也可以使用…

    css 2023年6月10日
    00
  • 合作推广
    合作推广
    分享本页
    返回顶部