VUE翻书效果(vue+ turn.js 实现翻书效果)

概述

vue+ turn.js 实现翻书效果 单页/双页

详细

一、运行效果

000.gif

 二、项目目录

三、项目引入turn.js或者turn.min.js

①、官方下载地址:Turn.js: The page flip effect in HTML5

主要是用到 turn.js或者turn.min.js

在vue工程中新建utils文件夹,存放这个第三方js(当然任意放也行,能找到就行),如下图:

image.png

②、安装JQ

用turn.js,基于JQuery项目已有JQ则跳过。

npm install jquery --save

vue.config.js中配置jq:

const webpack = require('webpack');
module.exports = {
    lintOnSave: false,
    //配置webpack选项的内容
    configureWebpack: {
        plugins: [
            new webpack.ProvidePlugin({
                $: "jquery",
                jQuery: "jquery",
            })
        ]
    },
 
}

实例翻书页文件路径为 工程/src/views/Home.vue


    import $ from 'jquery'
    import turn from '@/utils/turn.js'

四、核心方法

onTurn() {
    this.$nextTick(() => {
        $('#turnpage').turn({
            acceleration: true, //启用硬件加速,移动端有效
            display: 'double', //显示:single=单页,double=双页,默认双页
            duration: 800, // 翻页撒开鼠标,页面的延迟
            page: 1, // 默认显示第几页                 
            gradients: true, // 折叠处的光泽渐变,主要体现翻页的立体感、真实感
            autoCenter: true, //
            turnCorners: 'bl,br', // 设置可翻页的页角(都试过了,乱写 4个角都能出发卷起), bl,br   tl,tr   bl,tr 
            height: 700, //页面高度
            width: 1000 //翻书范围宽度,总宽度
        })
    })
},

调用onTurn:

    mounted() {   
        this.onTurn(); 
    },  

如果走正式接口,图片数组请求慢,需要延迟调用


    mounted() {   
        let that = this
        setTimeout(function() {
            that.onTurn();
        }, 1000)
    },

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西安未央

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值