Turn.js是一个内置的jQuery翻页插件
1 html中引入<script type="text/javascript" src="js/turn.js"></script>
2  创建html

<div id="flipbook">

<div style="background-image:url(pages/01.jpg);"></div>

<div style="background-image:url(pages/02.jpg);"></div>

<div style="background-image:url(pages/03.jpg);"></div>

<div style="background-image:url(pages/04.jpg);"></div>

<div style="background-image:url(pages/05.jpg);"></div>

<div style="background-image:url(pages/06.jpg);"></div>

</div>

3 javascript 部分

 

if(b_ok){
var turnWidth = $('#cover').outerWidth(),
turnHeight = $('#cover').outerHeight();

$('.flipbook').turn({
width: turnWidth*2+20,
height: turnHeight,
elevation: 50,
gradients: true,
autoCenter: true,
display:'double',
when: { turning: function(event, page, pageObject) {

} }
});

}
4.可用选项、属性、方法、事件、css类
 选项:
(1)acceleration:设置硬件加速模式,对于触摸设备,此值必须为真。
   acceleration:true;
(2)direction:指定flipbook从左到右(DIR=ltr,默认值)或右向左(DIR=rtl)的方向。
  a.$("#flipbook").turn({
    direction:'rtl'
   })
  b.<div id="flipbook" dir="rtl"></div>
  c.#flipbook{
      direction:rtl
    }
(3)duration:设置翻页的速度 
  duration:600 如果设置为0 则不会产生翻页效(4) gradients:翻页过程中显示渐变和阴影
   gradients:true
(5) width:页面的宽度 height:页面的高度
    width:num height:num
(6) elevation:转换期间页面的高度
    elevation:0
(7) page:初始化时设置页面个数
   page:1
(8) pages:设置任意数量的页面。如果页面的数量大于#flipbook中元素的数量,使用addPage方法动态地添加这些页面。
    $("#flipbook").children().length()
(9) when:事件侦听器。键必须在事件列表中使用
    $("#flipbook").turn({
    when:{
      turned: function(e, page) {
        if(page==1){
        }
        if(page==2){
        }
      }
    }
  })
属性:
(1) animating:当折叠的页面显示时返回true,
  function isAnimating() {
    if ($("#flipbook").turn("animating")) {
      alert('Animating a page!');
    }
  }
  (2)direction: 返回当前翻页的方向
     $("#flipbook).turn("direction")
  (3)display:获取当前显示的是单页还是双页
     $("#flipbook).turn("display")
  (4)page:获取当前页面为第几页
     $("#flipbook).turn("page")
  (5)pages:获取总共有多少页
    $("#flipbook").turn("pages")
  (6)size:获取flipbook的高宽
    $("#flipbook").turn("size")  获取出有两个值 size.width 和 size.height
 方法:
  (1) addpage:将页面添加到flipbook中 
      例如插入第10页:
      element=$("<div />").html("loading");
   $("#flipbook").turn("addpagge",element,6)
   (2) destroy:删除所有页面
       $("#flipbook").turn("destroy").remove();
   (3) direction :设置flipbook 的方向
       $("#flipbook").turn("direciton","rtl")
   (4) display:设置单页还是双页
       $("#flipbook").turn("display","single")   
   (5) next 把视图转到下一个
       $("#flipbook").turn("next")
       $("#flipbook").turn("next").turn("next")
   (6) options:更改选项的值 
       $("#flipbook").turn("options",{display:"single",duration:})
   (7) page:跳到指定的页面
       $("#fllipbook").turn("page",6)
   (8) previous:转到前面的视图
      $("#flipbook").turn("previous")
   (9) removepage:删除指定的页面
       $("#flipbook").turn("removepage",6)
   (10) resize:重新计算页面的大小
      $("flipbook").turn("resize")
   (11) stop:停止当前的过渡
      $("#flipbook").turn("page",6).turn("stop")
   (12)version:获取当前发布的版本
   $("#flipbook").turn("version")
   (13)zoom:flipbook的缩放比例 
    $("#flipbook").turn("zoom",0.5) 例如当值为0.5时 缩小为原来的一半 当值为1时 则不改变大小
   事件:
   (1) end:事件在页面停止时触发
       $("#flipbook").bind("end",function(event,pageobject,turned){
      alert("turn.end:"+pageobject.page)
       })
  (2)first:当当前页面为1时触发此事件
       $("#flipbook").bind("first",function(event){
         alert("page1")
       })
     (3)last:当当前页面为最后一页时触发此事件
      $("#flipbook").bind("last",function(event){
      alert("page_last")
    })
      (4)missing:当当前范围需要某些页面时 触发此事件
    $("#flipbook").bind("missing",function(event,pages){
      for(var i=0;i<pages.length;i++){
        $(this).turn("addpage",$("<div/>"),pages[i])
      }
       })
      (10) addpage:将页面插入到flipbook
      element=$("<div/>").html("loading...")
           $("#flipbook").turn("addpage",element,10) 插入第10页
      (11) start:页面启动时触发
           $("#flipbook").bind("start",function(event,pageobject,corner){
        if(corner=="tl"||corner=="tr"){
           event.preventDefault();   
        }
           })
           当翻动左角和右角时,禁止启动动画
      (12)turning:翻页之前被启动
     $("#flipbook").bind("turning",function(event,page,view){
             alert("turning the page to"+page)
          })
         翻页之前 弹出即将翻开的是第几页
      (13)turned:翻页完成之后启动
          $("#flipbook").bind("turned",function(event,page,view){
      alert("page"+page)
          })
      (14)zooming:当缩放改变时触发此事件
      $("#flipbook").bind("zooming", function(event,  newZoomValue, currentZoomValue) {
          alert("New zoom: "+currentZoomValue);
      });

jQuery中turn.js(翻页效果)学习笔记的更多相关文章

  1. turn.js 图书翻页效果

    今天用turn.js 做图书的翻页效果遇到问题: 图片路径总是出错 调了一天,总算调出来了 我用的thinkphp,其他的不知道是不是一样 三 个地方要改动: 1.后台查出地址 注意的地方:1.地址要 ...

  2. turn.js中文API 写一个翻页效果的参数详细解释

    $('.flipbook').turn({     width: 922,     height: 600,     elevation: 50,     gradients: true,     a ...

  3. jQuery+turn.js翻书、文档和杂志3种特效演示

    很好用的一款插件jQuery+turn.js翻书.文档和杂志3种特效演示 在线预览 下载地址 实例代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...

  4. jQuery支持mobile的全屏水平横向翻页效果

    这是一款支持移动手机mobile设备的jQuery全屏水平横向翻页效果插件. 该翻页插件能够使页面在水平方向上左右全屏翻动,它支持手机触摸屏,支持使用鼠标滚动页面. 整个页面过渡平滑,效果很不错. 在 ...

  5. Android平台中的三种翻页效果机器实现原理

    本文给开发者集中展现了Android平台中的三种翻页效果机器实现原理,希望能够对开发者有实际的帮助价值! 第一种翻页效果如下:     实现原理: 当前手指触摸点为a,则 a点坐标为(ax,ay), ...

  6. webapp应用--模拟电子书翻页效果

    前言: 现在移动互联网发展火热,手机上网的用户越来越多,甚至大有超过pc访问的趋势.所以,用web程序做出仿原生效果的移动应用,也变得越来越流行了.这种程序也就是我们常说的单页应用程序,它也有一个英文 ...

  7. 纯css3写的仿真图书翻页效果

    对css3研究越深入,越觉得惊艳.css3说不上是万能的,但是它能实现的效果也超出了我的想象.它的高效率和动画效果的流畅性很多情况下能替代js的作用.个人习惯css3能实现的效果就不会用js,虽然在国 ...

  8. ajax翻页效果模仿yii框架

    ajax翻页效果,模仿yii框架. 复制代码代码如下: <!DOCTYPE html>  <html>  <head>  <title>ajax分页_w ...

  9. Android 实现书籍翻页效果----完结篇

    By 何明桂(http://blog.csdn.net/hmg25) 转载请注明出处 之前由于种种琐事,暂停了这个翻页效果的实现,终于在这周末完成了大部分功能,但是这里只是给出了一个基本的雏形,没有添 ...

随机推荐

  1. 【笔记】JS脚本为什么要放在body最后面以及async和defer的异同点

    1.没有defer或async 浏览器遇到脚本的时候会暂停渲染并立即加载执行脚本(外部脚本),"立即"指的是在渲染该 script 标签之下的文档元素之前,也就是说不等待后续载入的 ...

  2. python处理数据(一)

    CSV数据处理 csv文件格式 逗号分隔符(csv),有时也称为字符分隔值,因为分隔字符也可以不是逗号,其文件以纯文本的形式存储表格数据(数字和文本).纯文本意味着该文件是一个字符序列,不含必须像二进 ...

  3. 51 nod 1682 中位数计数

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1682 1682 中位数计数 基准时间限制:1 秒 空间限制: ...

  4. Python 3 实现定义跨模块的全局变量和使用

    尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖. Python 中 global 关键字可以定义一个变量为全局变量,但 ...

  5. Java并发编程--7.Java内存操作总结

    主内存和工作内存 工作规则 Java内存模型, 定义变量的访问规则, 即将共享变量存储到内存和取出内存的底层细节  所有的变量都存储在主内存中,每条线程有自己的工作内存,工作内存中用到的变量, 是从主 ...

  6. virtualbox+vagrant学习-3-Vagrant Share-1-简介

    Vagrant Share 通过 ngrok 内网穿透功能实现让全世界人可以访问虚拟机的服务 Vagrant Share允许你与世界上的任何人共享您的Vagrant环境,几乎支持你在任何网络环境中使用 ...

  7. MySQL无法存储Emoji表情问题

    数据插入的时候报错: 1366 - Incorrect string value: '\xF0\x9F\x98\x81' for column 'job' at row 23 解决办法: 1.修改配置 ...

  8. python logging模块日志回滚TimedRotatingFileHandler

    # coding=utf-8 import logging import time import os import logging.handlers import re def logger(app ...

  9. USB协议规范文档简介

    USB协议规范文档简介       USB驱动开发必须对USB相关的协议规范有一定程度的了解,理解得越深,遇到的问题就会越少,解决问题的速度也就越快. 工欲善其行,必先利其器.USB协议规范就是USB ...

  10. Linux Shell常用技巧(七)

    十六. 文件查找命令find: 下面给出find命令的主要应用示例:    /> ls -l     #列出当前目录下所包含的测试文件    -rw-r--r--. 1 root root 48 ...