现代化的响应式图片画廊应用
DFGallery是一个现代化、响应式的图片画廊应用,专注于提供优秀的图片浏览体验。它采用瀑布流布局,支持灯箱模式、全屏查看、图片旋转缩放等功能,适合用于个人摄影作品展示、图片集分享等场景。
自动适应不同屏幕尺寸,在桌面端和移动端都能提供良好的浏览体验。
点击图片进入灯箱模式,支持大图查看、左右切换、缩放和旋转。
支持按图片标题搜索,快速找到您想要的图片。
支持全屏查看图片,提供沉浸式浏览体验。
在全屏模式下可对图片进行旋转和缩放操作。
支持直接下载当前查看的图片,方便保存和分享。
优化图片加载性能,提高页面响应速度。
显示图片的详细元数据,包括尺寸、分辨率、格式和EXIF信息。
显示图片的RGB直方图,帮助了解图片的色彩分布。
基于Waline实现,支持用户对图片进行评论和互动。
采用简洁、现代的设计风格,突出图片内容本身,减少不必要的视觉干扰。
添加了平滑的过渡动画,包括图片加载、按钮悬停、灯箱打开关闭等,提升用户体验。
从设计初期就考虑移动端体验,确保在小屏幕设备上也能提供良好的浏览体验。
支持键盘导航,包括左右箭头切换图片、ESC键关闭灯箱、F键切换全屏等,方便不同用户使用。
在画廊页面滚动浏览图片,瀑布流布局会自动调整图片排列。
点击任意图片进入灯箱模式,查看大图。
在灯箱模式下,使用左右箭头按钮或键盘左右键切换图片。
点击下载按钮可下载当前查看的图片。
点击全屏按钮或按F键进入全屏模式,再次点击或按ESC键退出。
在全屏模式下,使用旋转按钮可对图片进行顺时针或逆时针旋转。
在全屏模式下,使用缩放按钮可放大或缩小图片。
在顶部搜索框中输入关键词,按回车键或点击搜索按钮进行搜索,搜索结果会实时显示。
问题描述:在全屏模式下对图片进行旋转或缩放操作后,退出全屏模式时,灯箱中的图片仍然保持变换后的状态。
解决方案:系统已自动处理此问题,当您退出全屏模式时,图片会自动重置变换状态,恢复到原始大小和方向。无需手动操作。
技术说明:通过监听浏览器的fullscreenchange事件,当检测到退出全屏状态时,自动调用resetImageTransform()函数重置图片变换属性。
问题描述:画廊中某些图片显示为加载失败状态,或无法正常显示。
可能原因:
解决方案:
问题描述:使用搜索功能时,没有找到预期的图片,或搜索结果与关键词不匹配。
可能原因:
解决方案:
问题描述:在灯箱模式下,使用键盘左右箭头无法切换图片,ESC键无法关闭灯箱。
可能原因:
解决方案:
问题描述:点击全屏按钮后,页面没有进入全屏模式,或全屏功能异常。
可能原因:
解决方案:
问题描述:图片详情中显示的EXIF信息(如相机型号、拍摄日期等)不正确或缺失。
可能原因:
解决方案:
问题描述:将DFGallery项目部署在Cloudflare存储桶或腾讯EdgeOne存储桶,但图片资源存储在微软OneDrive上,通过OneDrive共享链接加载图片时,出现图片无法显示、EXIF信息无法读取或下载功能失效等问题。
可能原因:
解决方案:
https://1drv.ms/i/s!Axxxxxxxxxxxxxxhttps://1drv.ws/x/s!Axxxxxxxxxxxxxx(将1drv.ms替换为1drv.ws)https://api.onedrive.com/v1.0/shares/u!xxx/root/content(需要正确的分享ID)对于图片显示:
对于EXIF信息读取:
对于图片下载功能:
注意事项:
方法一:直接打开文件(推荐)
1. 下载项目文件到本地
2. 直接双击 index.html 文件即可在浏览器中打开
方法二:使用HTTP服务器
1. 下载项目文件到本地
2. 启动本地HTTP服务器,例如使用Python:
3. 在浏览器中访问 http://localhost:8000
1. 将项目文件上传到您的Web服务器
2. 通过域名或IP地址访问
您可以通过修改以下文件来自定义画廊:
script.js - 修改图片数据和核心逻辑style.css - 修改样式和布局index.html - 修改HTML结构1. 将图片添加到 images/ 目录
2. 生成缩略图并添加到 thumbnails/ 目录(可使用 generate-thumbnails.js 脚本)
3. 在 script.js 的 images 数组中添加图片信息
点击下方按钮查看在线演示:
查看画廊演示