详解vue-flickity的fullScreen功能实现


Posted in Javascript onApril 07, 2020

描述

在项目集成了vue-flickity组件后发现,该组件参考flickity官网的fullscreen配置不起作用

实现方法

  • 需要添加flickity-fullscreen组件
  • 在main.js中导入flickity-fullscreen组件
  • 添加flickity组件的fullscreen属性
  • 定义fullscreen的CSS样式

具体步骤

1.添加flickity-fullscreen组件

需要提前配置好flickity

yarn: yarn add flickity-fullscreen --save

npm: npm install flickity-fullscreen

Bower: bower install flickity-fullscreen

2. 在main.js中导入flickity-fullscreen组件

详解vue-flickity的fullScreen功能实现

3. 添加flickity组件的fullscreen属性

详解vue-flickity的fullScreen功能实现

详解vue-flickity的fullScreen功能实现

4. 定义fullscreen的CSS样式

/* 展开全屏按钮样式 */
.flickity-fullscreen-button-view{
  position: absolute;
  width:auto;
  height:auto;
  z-index: 999999;
  top: 0;
  right: 0;
  padding: 5px 10px;
  border-radius: 5px;
  box-shadow: 0 0 10px #0000000f;
}

/* 退出全屏按钮样式,
 * 设置display:none;是为了不让【展开全屏按钮】和【退出全屏按钮】同时显示在页面上
 */
.flickity-fullscreen-button-exit{
  display: none;
}

/* 点击全屏显示效果 */
.is-fullscreen {
  position: fixed;
  z-index: 1100;
  height: 100vh;
  width: 100vw;
  top: 0;
  left: 0;
  background: #0000009e;
 }

/* 当显示了全屏时,隐藏【展开全屏按钮】 */
.is-fullscreen .flickity-fullscreen-button-view{
  display: none;
}

/* 显示全屏时,显示【退出全屏按钮】设置按钮在页面右上方*/
.is-fullscreen .flickity-fullscreen-button-exit{
  display: block;
  position: absolute;
  width:auto;
  height:auto;  
  z-index: 999999;
  top: 0;
  padding: 5px 10px;
  border-radius: 5px;
  box-shadow: 0 0 10px #0000000f;
  right:0;
}

/* 设置被选中的图片大小为全屏*/
.is-fullscreen .is-selected{
  width: 100vw !important;
  height:100vh !important;
}

/* 设置选中的图片自适应屏幕大小,按屏幕大小进行缩放*/
.is-fullscreen .carousel-img{
  width:auto !important;
  height:auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
}

/* 取消展开退出按钮点击的边框样式*/
.flickity-button:focus{
  box-shadow: unset;;
}

/* 设置展开退出按钮的宽度*/
.flickity-button-icon{
  width:20px;
}

实际效果

详解vue-flickity的fullScreen功能实现

详解vue-flickity的fullScreen功能实现

Tips不能点击图片显示全屏,暂时只能点击fullscreen按钮全屏状态下没有左右箭头显示,但是可以左右滑动切换图片

参考

https://github.com/metafizzy/flickity-fullscreen#install
https://github.com/drewjbartlett/vue-flickity/issues/43

到此这篇关于详解vue-flickity的fullScreen功能实现的文章就介绍到这了,更多相关vue flickity fullScreen内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
xtree.js 代码
Mar 13 Javascript
一个简单的jQuery插件制作 学习过程及实例
Apr 25 Javascript
javascript中typeof的使用示例
Dec 19 Javascript
一个JavaScript函数把URL参数解析成Json对象
Sep 24 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
Mar 13 Javascript
在Node.js应用中使用Redis的方法简介
Jun 24 Javascript
jQuery实现的手机发送验证码倒计时效果代码分享
Aug 24 Javascript
浅谈JavaScript的闭包函数
Dec 08 Javascript
Vue.js实现实例搜索应用功能详细代码
Aug 24 Javascript
BootStrap 标题设置跨行无效的解决方法
Oct 25 Javascript
Vue插件从封装到发布的完整步骤记录
Feb 28 Javascript
详解JSON.parse和JSON.stringify用法
Feb 18 Javascript
小谈angular ng deploy的实现
Apr 07 #Javascript
简单了解Vue + ElementUI后台管理模板
Apr 07 #Javascript
vue开发中遇到的问题总结
Apr 07 #Javascript
手把手教您实现react异步加载高阶组件
Apr 07 #Javascript
javascript绘制简单钟表效果
Apr 07 #Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
Apr 06 #Javascript
jquery实现两个div中的元素相互拖动的方法分析
Apr 05 #jQuery
You might like
thinkphp缓存技术详解
2014/12/09 PHP
PHP时间类完整实例(非常实用)
2015/12/25 PHP
PHP自带方法验证邮箱是否存在
2016/02/01 PHP
PHP简单实现循环链表功能示例
2017/11/10 PHP
javascript代码编写需要注意的7个小细节小结
2011/09/21 Javascript
Javascript全局变量var与不var的区别深入解析
2013/12/09 Javascript
js查找某元素中的所有图片地址的方法
2014/01/16 Javascript
javascript实现文本域写入字符时限定字数
2014/02/12 Javascript
JavaScript页面模板库handlebars的简单用法
2015/03/02 Javascript
JavaScript获取两个数组交集的方法
2015/06/09 Javascript
js替换字符串中所有指定的字符(实现代码)
2016/08/17 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
JS实现百度搜索接口及链接功能实例代码
2018/02/02 Javascript
JavaScript同源策略和跨域访问实例详解
2018/04/03 Javascript
微信小程序保存多张图片的实现方法
2019/03/05 Javascript
前端面试知识点目录一览
2019/04/15 Javascript
Vue Cli 3项目使用融云IM实现聊天功能的方法
2019/04/19 Javascript
mpvue小程序循环动画开启暂停的实现方法
2019/05/15 Javascript
如何使用Node.js爬取任意网页资源并输出PDF文件到本地
2019/06/17 Javascript
nodeJS与MySQL实现分页数据以及倒序数据
2020/06/05 NodeJs
Vue.js原理分析之nextTick实现详解
2020/09/07 Javascript
Python实现测试磁盘性能的方法
2015/03/12 Python
Python易忽视知识点小结
2015/05/25 Python
Python爬虫之pandas基本安装与使用方法示例
2018/08/08 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
2019/12/11 Python
Python实现投影法分割图像示例(一)
2020/01/17 Python
python实现移动木板小游戏
2020/10/09 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
三星俄罗斯授权在线商店:Samsung俄罗斯
2019/09/28 全球购物
PHP数据运算类型都有哪些
2013/11/05 面试题
单位创先争优活动方案
2014/01/26 职场文书
幼儿园的门卫岗位职责
2014/04/10 职场文书
小学教师自我评价
2015/03/04 职场文书
超强台风观后感
2015/06/09 职场文书
幼儿园六一主持词
2015/06/30 职场文书
python中urllib包的网络请求教程
2022/04/19 Python