前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >号称世界上最流行的灯箱脚本!这款"花盒"为什么与众不同?

号称世界上最流行的灯箱脚本!这款"花盒"为什么与众不同?

作者头像
程序员老鱼
发布于 2024-06-07 11:19:56
发布于 2024-06-07 11:19:56
11800
代码可运行
举报
文章被收录于专栏:前端实验室前端实验室
运行总次数:0
代码可运行

简介

Fancybox 是终极的(ultimate) JavaScript 灯箱替代品,为多媒体显示中的优质用户体验设定了标准。支持图像、视频、地图、内联内容、iframe 和任何其他 HTML 内容

此外,Fancybox 很容易集成到任何 JavaScript 框架中。详情可以参见官方文档中关于 React、Vue 和 Angular 的示例。

主要特点

FancyBox 是一个最流行的灯箱脚本JavaScript 库,它以优雅的方式展示图片,视频和一些 html 内容。它包含你所期望的一切特性--支持触屏,响应式和高度自定义等

  • TypeScript 编写,没有外部依赖
  • 高度可定制,具有大量配置选项和 CSS 变量
  • 通过滑动、拖动和捏合缩放手势对触摸和移动设备进行了优化
  • 多个同时打开(活动)的实例
  • 两种类型的缩略图:经典和现代
  • 紧凑模式,具有类似移动设备的用户体验
  • 各种转换控件新增

新版的 Fancybox,还支持 <picture> 元素,可以处理包含无限项目的新图库,维持空闲状态,新增鼠标平移功能等。

安装和使用

由于 Fancybox 是用 vanilla JS 编写的,因此很容易集成到任何地方。您不需要jQuery或任何其他依赖项!

安装

对于大多数用户,建议从 NPM 包注册表安装并使用工具。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Usage with NPM
$ npm install --save @fancyapps/ui

# and with Yarn
$ yarn add @fancyapps/ui

安装后,您可以将 Fancybox 作为 ES 模块包含在内:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import { Fancybox } from "@fancyapps/ui";
import "@fancyapps/ui/dist/fancybox/fancybox.css";

当然,你也可以从CDN进行安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0/dist/fancybox/fancybox.umd.js"></script>
<link
  rel="stylesheet"
  href="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0/dist/fancybox/fancybox.css"
/>

也可以下载文件到本地,并手动引用。(最新的代码也始终在 GitHub 上可用,而分发文件可以在 dist 文件夹中找到)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="fancybox.umd.js"></script>
<link rel="stylesheet" href="fancybox.css" />
使用

创建元素并添加 data-fancybox 属性。使用 href or data-src 属性指定要在 Fancybox 中显示的内容源。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<a href="image-a.jpeg" data-fancybox data-caption="Single image">
  <img src="thumbnail-a.jpeg" />
</a>

通过向多个元素添加相同的属性data-fancybox 值来创建一组元素。您可以在每个元素中混合图像、视频和任何 HTML 内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<a href="image-a.jpeg" data-fancybox="gallery" data-caption="Caption #1">
  <img src="thumbnail-a.jpeg" />
</a>

<a href="image-b.jpeg" data-fancybox="gallery" data-caption="Caption #2">
  <img src="thumbnail-b.jpeg" />
</a>
添加点击事件

最后一步是使用该 Fancybox.bind() 方法将处理程序添加到启动 Fancybox 的元素的 click 事件

添加 Fancybox JS 文件后,将此代码粘贴到页面上的任何位置:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Fancybox.bind("[data-fancybox]", {
  // Your custom options
});

重点是自定义,根据你自己的需求去处理相应的事件!

以上只是 Fancybox 最基本的用法。更多用法和示例,请查阅官网网站。

官网 https://fancyapps.com/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Fancybox图片灯箱效果实现
Fancybox是一款基于jquery开发的类Lightbox插件,同时也是一款很绚丽的 jquery 弹出层展示插件,支持对放大的图片添加阴影效果,对于一组相关的图片添加导航操作按纽。
岳泽以
2022/10/26
2.6K0
WordPress 添加图片点击放大效果
在当前主题下的header.php文件下添加以下代码 <!-- 图片放大 --><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css" /> 在当前主题下的footer.php文件下添加以下代码 <!-- 图片放大 --><script src="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@
Qwe7
2022/03/14
5.4K0
如何在WordPress中添加图片放大预览效果
这里分享一个如何在Wordpress中开启点击图片预览的功能。操作也非常的简单,只需要把下面的内容黏贴到对应的文件中即可。实际的效果预览
兔云小新LM
2023/09/11
3670
如何在WordPress中添加图片放大预览效果
全站启用 fancybox 图片预览插件
图片预览的话有很多插件,不过 fancybox 我认为是比较公然好评的一款,之所以使用它也是因为之前把图片预览关掉了(像图片比较多的页面还是比较不方便),优缺点以及在 weblog 里讲了,这里简单记下使用的步骤
2Broear
2024/03/12
3240
全站启用 fancybox 图片预览插件
基于 gulp 的 fancybox 源码压缩
前不久,处理生信分析网页版自动化报告的时候就使用过 fancybox,今天在优化个人博客,为博文增加图片缩放效果,解决一些滚动条问题时,才从 fancybox 的 Github 源码中接触到 gulp —— 一个基于流的前端自动化构建工具,记录一下学习的过程。
章鱼猫先生
2020/01/17
1.3K0
纯代码给你的网站增加图片灯箱效果,增强落地页体验
灯箱效果是我一直想加又没有加的功能,正好最近百度在推移动落地页检测,顺手做一下优化
沈唁
2019/05/22
6.9K2
纯代码给你的网站增加图片灯箱效果,增强落地页体验
快速将Butterfly主题的CDN从jsDelivr切换至自建反向代理源
最新版的Butterfly取消了原来设置在_config.yml里的默认CDN,导致不能快速替换掉现在极不稳定的jsDelivr CDN。本文的默认Butterfly版本为4.1.0。
pai233
2022/04/25
2.5K2
Hugo博客添加相册功能
我采用的是nanogallery2这个插件,里面有具体的配置文档: Titlenanogallery2用法指导
素履coder
2023/03/27
7840
Next -24- 添加相册系列 -4- 将本地相册信息部署到hexo
在之前基础工作完成后,来到了距离我们相册最接近的一步,本文介绍上线相册的一种思路,供大家参考。 准备工作 Next -21- 添加相册系列 - 1- 框架设置 Next -22- 添加相册系列 -2- 使用七牛云qshell同步图像目录 Next -23- 添加相册系列 -3- 获取图像信息、保存为json文件并上传图像 上线思路 现在我们已经有了基础的photos框架,图像文件夹已经整理完毕,提取了信息放在了json文件,并且将图像上传到了七牛云图床,在hexo source文件夹内创建了相册对应inde
为为为什么
2022/08/04
5880
Next -24- 添加相册系列 -4- 将本地相册信息部署到hexo
哔哔图片问题
本文根据洪哥哔哔教程二改~解决哔哔发送图片问题 相关教程 教程地址 洪哥哔哔教程 洪哥哔哔教程https://blog.zhheo.com/p/a6947667.html 问题说明 可以看到问题很明显 图片大小 图片上下有多余得代码(洪哥js得问题) 无法预览 修改步骤 源码修改方式 cdn链接替换(推荐) 将洪哥heobbe.js文件拉取到博客存放js得目录下 修改其中得urlToLink方法 function urlToLink(str) { console.log("判
SerMs
2022/04/20
2990
哔哔图片问题
Jekyll 优化合集
  Jekyll 是一款采用 Ruby 语言编写的、非常方便简单又功能强大的静态站点生成器,适合于搭建个人博客、静态网站等。我们知道,Github Page 默认支持的也是 Jekyll,而非 Hexo、Hugo等静态站点生成器。Hexo 是用 NodeJS 语言编写的,Hugo 是用 Go 语言编写的,它们三者背后其实都有非常丰富的插件来增强它们自身,从而为用户提供一个可插拔式的个人定制功能。由于本站目前是采用 Jekyll 来搭建的,所以为了提供给读者更加高效的阅读条件,笔者在廖柯杰大佬开发的 H2O 主题的基础上做了一些功能上的增加和优化,接下来就来详细介绍一下。
zhonger
2022/10/28
2.1K0
为volantis主题添加瀑布流相册
目前已知的问题: 1.不支持pjax 2.分类功能无法使用 3.懒加载无法使用,使用懒加载后图片不显示 4.目前的样式可能稍显单调 优势: 1.可以使用GitHub action自动构建 2.走jsd免费cdn加速,访问快
GOOPHER
2022/03/31
1.1K0
为volantis主题添加瀑布流相册
Bootstrap入门
Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,使得 Web 开发更加快捷。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。Bootstrap一经推出后颇受欢迎,一直是GitHub上的热门开源项目,包括NASA的MSNBC(微软全国广播公司)的Breaking News都使用了该项目。 [1] 国内一些移动开发者较为熟悉的框架,如WeX5前端开源框架等,也是基于Bootstrap源码进行性能优化而来。
Qwe7
2022/06/01
4570
Bootstrap
Bootstrap是一个用于快速开发Web应用程序和网站的前端框架。 Bootstrap支持响应式布局!响应式布局指的是一个网站能够兼容多种终端设备访问!. 终端设备:..电脑、平板电脑、手机
eadela
2019/09/29
6.5K0
Bootstrap
5.栅格系统
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yx7xPxw0-1594451881727)(D:\bootstrap\Bootstrap入门.assets\image-20200711135751305.png)]
Qwe7
2022/06/01
1.1K0
博客优化小记
阅读统计和访客统计使用的都是不蒜子,因为使用的是NexT主题,只需要添加一下配置就可以了。
超超不会飞
2020/11/24
5120
博客优化小记
仿sina个人轻微博html静态网页模板
一款最新的仿sina个人微博html静态网页模板(轻博客/轻微博/贴吧主页、qq社交空间主题),模板清新简洁、新颖,包含关注、粉丝、人气、个人资料、文章、视频等。比较适合类似爱装扮空间的女生,二次元动漫、插画绘画等内容的个人轻社交博客的模板主题。
博客趣
2024/01/16
2840
仿sina个人轻微博html静态网页模板
为 butterfly 主题的 twikoo 添加图片点击放大功能
只需将 twikoo.pug 中对应的代码修改如下 (直接抄自 main.js) twikoo.init(Object.assign({ el: '#twikoo-wrap', envId: '!{theme.twikoo.envId}', region: '!{theme.twikoo.region}', onCommentLoaded: function () { if(typeof window.mediumZoom!='undefined'){ const zoo
Rikka
2022/01/20
1.1K0
添加嘉然live2d作为博客看板娘并本地化
效果:https://www.bilibili.com/video/av375230316
MashiroT
2022/10/28
7830
bootstrap
花了一天时间学了下bootstrap入门,想必大家用css写前端页面的时候都很痛苦,bootstrap就是来解决这个问题的,它封装了css的很多样式,开发的时候直接拿来用就可以了,提高了开发效率
用户3112896
2019/09/26
3.4K0
bootstrap
相关推荐
Fancybox图片灯箱效果实现
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文