移动端图片浏览器轮子
缘起
身为一名前端渣,平常轮子用的飞起,不到万不得已,绝不自己写代码!慢慢的,成为了一名熟练的轮子组装师傅。但在不久前,需要在移动端展示一些图片,产(niu)品(pi)经(da)理(wang)说:跟微信图片浏览效果差不多就可以!于是颤抖着双手在github那一通找啊,居然没发现一个好用的!顿时心情有点复杂。没办法啊,为了混口饭吃,只有先用个现成轮子摸一下鱼咯。自己业余时间慢慢搞一个呗,于是便有了这个完成度还可以的轮子h5-imageviewer
一些已实现的功能
- 常用的手势,比如捏、旋转、双击放大缩小和swipe等
- 滑动和swipe换页
- 横竖屏及平滑切换
- 纯dom实现,适用于React/Vue/Angular
- 支持长图浏览
先举个栗子(扫码在线体验)
竖屏视频
横屏视频
单张图片模式
安装
直接通过npm安装即可
npm install h5-imageviewer
复制代码
如何使用
单张图片模式(手势更多哦)
import viewer from 'h5-imageviewer'
viewer.showViewer(imgUrl, // image url (base64 also support){altImg, // placeholder when image onerroronViewerHideListener = ()=>{}, // listener for viewer hiderestDoms = [], // config some addition dom elementsimgMoveFactor = 2, // movement speed (imgMoveFactor * translateX or translateY)imgMinScale = 1, // minimum scale of the imageimgMaxScale = 2, // maximum scale of the image}
)
// hide image viewer
viewer.hideImgViewer()
复制代码
多图片分页模式(为了简单方便,支持长图)
import viewer from 'h5-imageviewer'
viewer.showImgListViewer(imgList, // image url list (base64 also support){defaultPageIndex = 0, // the default page index (start with 0)altImg,onPageChanged = pageIndex=>{}, // page changed listeneronViewerHideListener = ()=>{},restDoms = [],pageThreshold = 0.1, // threshold of go to next or prev page (window.innerWidth * pageThreshold)pageDampingFactor = 0.9, // damping factorimgMoveFactor = 2,imgMinScale = 1,imgMaxScale = 2,limit = 11, // how many pages will be kept offscreen in an idle state}
)
// hide image list viewer
viewer.hideImgListViewer()
复制代码
更多使用详情,请参照 EXAMPLE
第三方依赖(香)
- AlloyFinger
下一步计划
- 导出更多配置项,高度定制化
- 快速滑动手势支持
转载于:https://juejin.im/post/5d4c32e75188255b3e412ad7
移动端图片浏览器轮子相关推荐
- java 移动页面中的图片上传_移动端图片操作——上传
上传我们一般都是用"input[type=file]"控件.当你用此控件时,你就授权了网页和服务器访问对应的文件,就可以得到File对象. 友情提示在,在Android手机webv ...
- html百度转到顶部 fixed,科技常识:完美解决安卓端百度浏览器屏蔽fixed悬浮元素的问题...
今天小编跟大家讲解下有关完美解决安卓端百度浏览器屏蔽fixed悬浮元素的问题 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关完美解决安卓端百度浏览器屏蔽fixed悬浮元素的问题 的相关资料 ...
- [转载]input[type=file]在移动端各浏览器无法适配打开相机的问题。
原文地址:input[type=file]在移动端各浏览器无法适配打开相机的问题.作者:韩小文 近期有一需求是拍照上传用户头像并能进行区域性的截取操作. 故使用了input[type=file]标签进 ...
- java 移动页面中的图片上传_HTML5移动端图片上传(一)
上传我们一般都是用"input[type=file]"控件.当你用此控件时,你就授权了网页和服务器访问对应的文件,就可以得到File对象. 友情提示在,在Android手机webv ...
- 【好工具】安利一款优秀的图片浏览器
欢迎大家来到<好工具>专栏,这个专栏面向所有希望获得高效生产力工具的朋友.在这个专栏里,我们会和大家聊聊那些狂拽酷霸炫的生产力工具! 相信大家一定和我一样,茫然于庞大的工具海洋,却仍找不到 ...
- 浅谈移动端图片压缩(iOS Android)
在 App 中,如果分享.发布.上传功能涉及到图片,必不可少会对图片进行一定程度的压缩.笔者最近在公司项目中恰好重构了双端(iOS&Android)的图片压缩模块.本文会非常基础的讲解一些图片 ...
- JavaScript移动端图片上传方法
移动端图片上传方法 实现效果 文件下载 http://files.cnblogs.com/files/sntetwt/%E7%A7%BB%E5%8A%A8%E7%AB%AF%E5%9B%BE%E7%8 ...
- html5照片浏览,实践html5实例–简单图片浏览器
使用canvas来进行绘画,它像很多其他dom对象一样,有很多属性和方法,操作这些方法,实现绘画 获取canvas对象,调用document.getElementById()方法 调用canvas对象 ...
- vue实现移动端图片预览
vue实现移动端图片预览 1.安装插件 2.main引入 3.使用 注意 扩展 通过使用vue-photo-preview插件,实现移动端图片的预览,全屏等功能. 1.安装插件 npm install ...
- 移动端图片_编码解码调研
图片通常是移动端流量耗费最多的部分,并且占据着重要的视觉空间.合理的图片格式选用和优化可以为你节省带宽.提升视觉效果.在这篇文章里我会分析一下目前主流和新兴的几种图片格式的特点.性能分析.参数调优,以 ...
最新文章
- mybaits四-3:获取保存数据的id
- Eclipse中 怎么让包分层级显示
- android view存储为jpg,Android长按imageview把图片保存到本地的实例代码
- 差值平方和匹配_纯前端实现图片的模板匹配
- 如何“神还原”数据中心? 阿里联合NTU打造了工业级精度的仿真沙盘!
- pyhon基础(一)
- Aurora 64B66B IP核的硬件跑通
- 新加坡国际学校IB课程体系
- Win11启动IE浏览器
- 曙光服务器通过ipmi安装系统,曙光服务器ipmi部署记录精编版
- 信创只是开始_《作业帮高管团队亲笔信:D轮只是开始,一切归零,重新出发》...
- 这40个冷知识,据说只有1%的人知道……颠覆你的认知!
- h5页面如何预览excel文件_kintone excel预览插件
- AngularJS风格指南
- 转贴:华为加班死人了
- 【转】一位硕士毕业生三个月求职经历与经验的结晶
- H5互动小游戏如何提升用户留存
- 自学单片机编程(四)流水灯代码优化
- 使用weinre调试移动端真机
- ‘冰封’合约背后的老牌劲敌 | 链安团队漏洞分析连载第二期 —— 拒绝服务漏洞
热门文章
- C#编程打字指法练习
- SQL Server中Id自增列的最大Id是多少
- 【dedecms】DedeCms的搜索引擎优化方法小结
- 怎么修改Ubuntu和Windows双系统启动菜单项顺序?
- 计算机描绘的基因结构图,傻瓜式图文教程:Genecards基因信息检索与分析、基因结构图绘制.........
- python一个字符占几个字节_字符串在Python内部是如何省内存的
- 分解质因数 java_java代码分解质因数
- 机器学习:什么是预测模型性能评估
- 指付通盗刷信用卡维权连载--9月2日维权纪实
- 一根均线选股法_“傻瓜式炒股法”——20日均线一根均线买入法,简单很实用!...