详解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 相关文章推荐
JS 树形递归实例代码
May 18 Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
Jan 02 Javascript
Javascript中Array用法实例分析
Jun 13 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
Jul 28 Javascript
JavaScript如何实现组合列表框中元素移动效果
Mar 01 Javascript
js编写当天简单日历效果【实现代码】
May 03 Javascript
JS采用绝对定位实现回到顶部效果完整实例
Jun 20 Javascript
Bootstrap基本插件学习笔记之Tooltip提示工具(18)
Dec 08 Javascript
在vue项目中安装使用Mint-UI的方法
Dec 27 Javascript
从vue基础开始创建一个简单的增删改查的实例代码(推荐)
Feb 11 Javascript
详解vue-cli3多环境打包配置
Mar 28 Javascript
vue项目中常见问题及解决方案(推荐)
Oct 21 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 防止表单重复提交的方法
2011/08/08 PHP
php找出指定范围内回文数且平方根也是回文数的方法
2015/03/23 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
2017/05/20 PHP
实例说明js脚本语言和php脚本语言的区别
2019/04/04 PHP
JavaScript控制Session操作方法
2013/01/17 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
Javascript前端UI框架Kit使用指南之kitjs事件管理
2014/11/28 Javascript
js实现图片和链接文字同步切换特效的方法
2015/02/20 Javascript
JavaScript生成的动态下雨背景效果实现方法
2015/02/25 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
2016/08/05 Javascript
原生js实现节日时间倒计时功能
2017/01/18 Javascript
vue安装和使用scss及sass与scss的区别详解
2018/10/15 Javascript
让mocha支持ES6模块的方法实现
2020/01/14 Javascript
pymongo实现控制mongodb中数字字段做加法的方法
2015/03/26 Python
Python中文分词实现方法(安装pymmseg)
2016/06/14 Python
Python之列表的插入&替换修改方法
2018/06/28 Python
Python生成器generator用法示例
2018/08/10 Python
Python+OpenCV感兴趣区域ROI提取方法
2019/01/10 Python
Python列表(List)知识点总结
2019/02/18 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
详解纯CSS3制作的20种loading动效
2017/07/05 HTML / CSS
Opodo英国旅游网站:预订廉价航班、酒店和汽车租赁
2018/07/14 全球购物
澳大利亚运动鞋零售商:The Athlete’s Foot
2018/11/04 全球购物
美国杰西潘尼官网:JCPenney
2019/06/12 全球购物
Solaris操作系统的线程机制
2012/12/23 面试题
Laravel中Kafka的使用详解
2021/03/24 PHP
大学生个人求职口试自我评价
2014/02/16 职场文书
乔迁之喜主持词
2014/03/27 职场文书
仓库文员岗位职责
2014/04/06 职场文书
药品营销专业毕业生自荐信
2014/07/02 职场文书
励志广播稿300字(5篇)
2014/09/15 职场文书
垂直极限观后感
2015/06/08 职场文书
神州牡丹园的导游词
2019/11/20 职场文书
Java常用函数式接口总结
2021/06/29 Java/Android
Arthas排查Kubernetes中应用频繁挂掉重启异常
2022/02/28 MySQL