5 分钟跑起来专业 JavaScript 图片查看器:Viewer.js 零依赖图解库

发布时间:2026/10/21 13:56:55

5 分钟跑起来专业 JavaScript 图片查看器:Viewer.js 零依赖图解库 5 分钟跑起来专业 JavaScript 图片查看器Viewer.js 零依赖图解库【免费下载链接】viewerjsJavaScript image viewer.项目地址: https://gitcode.com/gh_mirrors/vi/viewerjs又要在项目里手写一套拖拽 滚轮缩放 触摸双指缩放的逻辑了Viewer.js 是一个零依赖的 JavaScript 图片查看器把这些交互全做成了现成的——点一下img它就变成可缩放、可旋转、可切换的查看器。压缩后不到 20KB打包体积基本无感。它到底能干什么别背 53 个配置项先看场景和能力的对应关系你的场景Viewer.js 现成的能力电商详情页用户要看清布料纹理滚轮 触摸缩放范围 0.01% ~ 100 倍摄影作品需要换个角度看任意角度旋转 水平/垂直翻转图集连续浏览上一张/下一张、方向键切换、空格键连续播放不想弹窗想嵌在卡片里inline 模式原位置内嵌查看移动端体验触摸缩放、滑动手势每一项都能单独关闭五分钟上手安装命令与 3 行代码安装npm install viewerjs最短可运行代码import Viewer from viewerjs; import viewerjs/dist/viewer.css; new Viewer(document.querySelector(#image), { inline: true });点一下那个#imageJavaScript 图片查看器就跑起来了。23 个方法、17 个事件的完整清单在 README 里不必全记。核心配置怎么调7 个高频选项速查inlinetrue开启页面内嵌默认是弹窗模式。后台管理预览场景常用url查看器取图的来源属性默认src。缩略图页面配url: data-original页面看缩略图、查看器里看原图initialCoverage初始占容器比例默认 0.9。大图想先看到全貌就调低到 0.5maxZoomRatio / minZoomRatio缩放上下限默认 100 和 0.01。文档预览限到 10 就够避免用户放大到看像素zoomOnWheel是否开启滚轮缩放。页面滚动很多时关掉避免和页面滚动打架navbar底部切换条true显示箭头 张数1只显示张数title标题文案支持传数组自定义每张图的标题进阶玩法自定义工具栏与事件钩子自定义工具栏。问题默认按钮不符合业务想加个下载按钮。解法toolbar选项接收对象每个按钮可设 true/false 或自定义函数const viewer new Viewer(galley, { url: data-original, toolbar: { prev() { viewer.prev(true); }, download() { const a document.createElement(a); a.href viewer.image.src; a.click(); }, }, });完整写法参考 docs/examples/custom-toolbar.html。用事件钩子限制移动。问题用户把图拖出容器就找不到了。解法监听move事件偏移超限时调用event.preventDefault()拒绝这一步位移完整示例见 docs/examples/moving-range-limit.html。踩坑提醒4 个高频翻车点⚠️别把原图直接放 src——查看器按url取原图。5MB 大图放 src 里页面会先全量加载把缩略图放 src、原图放 contenteditable="false">【免费下载链接】viewerjsJavaScript image viewer.项目地址: https://gitcode.com/gh_mirrors/vi/viewerjs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/21 21:05:36

VC6.0中使用CImage实现PNG透明贴图与Alpha混合的完整指南

简介:面向仍在使用VC6.0开发环境的C工程师,压缩包以完整示例工程演示加载PNG图片并实现透明效果的方法,讲解基于GDI图形扩展库处理图像透明度通道、借助颜色矩阵调整透明度的核心思路,同时覆盖窗口及控件透明化的实现方式。压缩包…

2026/10/21 21:05:36

微信小程序BLE开发踩坑记02|系统蓝牙可见却搜不到?

背景 上一篇刚把"安卓搜不到设备"那事摆平,我还挺得意,以为扫描这块算是摸清了。结果一接血压计,又懵了:同一台手机、同一套扫描代码,血氧仪一搜就出来,血压计扫半天页面干干净净。 更邪门的是&a…

2026/10/21 21:05:36

C# WinForm 嵌入外部 EXE 窗口:SetParent 实战与避坑指南

简介:这份资源面向具备一定C#基础的WinForm开发者,聚焦于将外部EXE程序嵌入窗体这一常见但实现路径多样的技术需求。包内共25个文件,以cs源码、exe可执行程序、resx资源文件、csproj工程文件及sln解决方案为主,另含pdb调试符号与m…

2026/10/21 21:05:36

服务器磁盘选型与Linux磁盘管理实战:从RAID配置到故障排查

服务器选型最容易翻车的环节,往往不是 CPU 和内存,而是磁盘。CPU 不够可以堆核,内存不够可以加条,但磁盘的接口类型、RAID 级别、文件系统布局一旦定错,后期改造成本非常高。尤其在高并发业务、数据库场景、日志采集场…

2026/10/21 21:05:36

青蛙游戏开发实战:从手感调优到本地化发布的独立游戏完整链路

如果你刷到过这条帖子,大概会觉得它只是一个轻松的求助:一位美国独立开发者做好了青蛙游戏,请大家帮忙取一个中文名。事情看起来很小,但站在技术开发者的角度看,这个举动释放的信号比“取名字”本身重要得多——它意味…

2026/10/21 21:00:34

HarmonyOS 7+ArkTS:精准碰一碰回执幂等判定与确认门禁【鸿蒙心迹】

碰一碰分享完成后,应用界面收到一条“接收成功”的通知,看起来应该立刻把素材加入列表。这里有一个容易忽略的细节:通知抵达和用户确认接收,不一定是同一件事。设备靠近、页面恢复、通信重试可能让业务适配层交出内容相同的回执。…

2026/10/21 4:53:08

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/21 0:00:35

交通流仿真实战:IDM跟驰与MOBIL换道模型参数调优与避坑指南

简介:这份资源是面向交通工程学习者与Python开发者的微观交通流仿真项目,核心实现智能驾驶模型(IDM)下的车辆跟驰与换道行为,可用于理解速度、密度与流量之间的动态关系,适合具备Python基础、希望深入交通模…

2026/10/21 0:00:35

揭穿智能体表面顺从:用追踪代码重建任务执行确定性

1. 表面顺从不是智能体的“礼貌”,而是任务执行链路上的隐性断点最近在调试一个跨平台长周期任务调度系统时,我反复遇到一种令人困惑的现象:智能体在用户指令发出后,几乎秒级响应“已收到”“正在处理”“请稍候”,UI上…

2026/10/21 0:00:35

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑