jquery图片查看插件,支持旋转、放大、缩小、拖拽、缩略图(仿qq图片查看)
最近做了一个jquery图片查看的插件,目的是能精确查看图片的详情,插件支持图片旋转、放大、缩小、拖拽、缩略图显示,界面效果是按照window的qq查看图片功能写的,当然不尽相同。
具体功能:
多张图片切换,键盘左右键或左右箭头切换
旋转
放大,支持鼠标滚轮
缩小,支持鼠标滚轮
右下角缩略图
拖拽大图
全屏
PS:下面是插件各状态下效果,demo示例会在最后放出来。
全屏
全屏是容器的最大化。
缩小
可以点击缩小图标或者鼠标滚轮向下滚,可以缩小图片。
放大
可以点击放大图标或者鼠标滚轮向上滚,可以放大图片。当图片长或宽大于容器时候,就会出现右下角的缩略图。
旋转
旋转是使用css3实现的。
拖拽图片
大图区域和缩略图区域都是可以拖拽的,可以通过拖拽查看图片某个位置。
旋转拖拽
实现插件过程中,这个是最困难的地方,旋转加上拖拽图片,计算方式复杂很多。
切换图片
插件支持多张图片切换查看,可以通过键盘左右键或左右箭头切换。
总结
这个插件耗时4天才写好,难点在于图片旋转之后兼顾其他功能。实现的详情就不细说了,附上demo示例。
我把源代码放在网盘上了,有需要的可去下:http://pan.baidu.com/s/1bTWGnO
PS:注意全屏、关闭的功能需要将示例部署起来才能演示,不然会有跨域问题。
PS:所以如果要使用我的插件,估计需要对插件做一些兼容处理,不然就得等我找时间做了。
这个问题我也发现了,确实是在大图拖拽时候有卡顿现象,这个我也将稍后修复。
修复了拖拽不平滑问题。
对Firefox、Chrome、Safari、IE9+进行兼容。
PS:暂时没有考虑兼容IE9以下。
原文链接:http://www.cnblogs.com/lovesong/p/5004951.html
jquery图片查看插件,支持旋转、放大、缩小、拖拽、缩略图(仿qq图片查看)相关推荐
- 强大的jQuery幻灯片播放插件 支持全拼、拖拽和下载等功能
强大的jQuery幻灯片播放插件 支持全拼.拖拽和下载等功能 在线演示 本地下载 posted @ 2018-11-29 11:30 栖息地 阅读(...) 评论(...) 编辑 收藏
- vue实现鼠标滚动图片放大缩小拖拽
1.封装可放大缩小拖拽组件 <template><div class="drag-outer"ref="dragWrap":style=&qu ...
- 使用 Fresco 实现大图浏览(支持手势放大、拖拽)
一.Fresco简介 Fresco是facebook出品的一款图片加载框架,使用了Fresco之后,不需要再考虑图片的加载和内存占用的问题,堪称图片加载的神器.Fresco将图片存储到一个特殊的区域, ...
- Vue实现图片预览(放大缩小拖拽)纯手写
这张图是显示的图片放大的一个预览情况,这里是参考预览操作实现的一个背景为黑色的部分,上层的图片可实现滚轮放大或者点击上部的放大镜图标进行放大,代码是基于Ant Design Vue框架的基础上 这里先 ...
- 【quill-editor】富文本编辑器对图片的放大缩小拖拽的实现
首先哈,quill-editor没有对图片的功能,文档里也有提到扩展模版 文档: 回归正题=> 1.安装模版 npm i quill-image-drop-module -S //拖拽 npm ...
- vue 实现图片放大缩小拖拽
https://www.h5w3.com/239173.html https://blog.51cto.com/wjw1014/5411219 // 放大缩小public setTransform ( ...
- canvas 实现图片放大缩小拖拽 移动端、PC端
前言 实现目标:使用canvas画出地图,且可以通过鼠标滚轮缩放,拖拽:手指滑动拖拽,手势缩放 drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dW ...
- bootstrap缩小后div互相叠加_纯 JS 实现放大缩小拖拽踩坑之旅
点击上方"前端公虾米",选择"置顶或者星标" 你的关注意义重大! 前言 最近团队需要做一个智能客服悬浮窗功能,需要支持拖动.放大缩小等功能,因为这个是全局插件, ...
- js 实现 H5 div的内容 放大缩小拖拽功能 vue可用
大佬写的组件 , 虽然我看不懂 但不妨碍我会用啊 想去看大佬代码的点这里 下面的无脑的代码时刻 一.复制代码到一个单独的.vue文件然后 走人去下一步 // 放大缩小页面组件 <template ...
- vue-draggable-resizable放大缩小拖拽功能
效果图 1.下载依赖 npm install --save vue-draggable-resizable main.js引入 import VueDraggableResizable from 'v ...
最新文章
- numpy.tril详解
- [Python unittest] 3-Organizing test code
- 怎么判断前轮左右的位置_如何判定汽车前面左右轮的位置?大家有什么经验?...
- operator、explicit与implicit
- ZStack获1亿元B轮融资,深创投领投、阿里云继续跟投
- GVRP的应用—华为拓扑
- Anaconda自带Python编译器Jupyter Notebook显示代码行数
- 基于阿里云移动推送的移动应用推送模式最佳实践
- python迭代器与生成器答案_史上最全 Python 迭代器与生成器
- vuejs+webpack环境搭建
- np.c_和np.r_
- oracle 丁勇 从零开始学_8.1.6 BETWEEN、IN和LIKE范围查询(1)
- SQLSERVER 2008 R2下载安装教程
- matlab倒立摆pid仿真,一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真
- 龙芯3a4000 交叉编译链接错误
- VC++信息安全编程(14)PNP溢出代码漏洞扫描检测
- excel图表上x轴y轴怎么设置的教程介绍
- bingo update1
- Centos自动登录
- 【脚本工具】QQ个人数据管理方法与脚本
热门文章
- WIN7上的“雅黑字体” WIN8上的“雅黑字体”
- 12306 js刷票脚本
- A column generation-based heuristic for aircraft recovery problem with airport capacity constraints
- 红警快修—IBM服务器X3650 M4 不能开机故障
- 极建立跨集团核电厂核事故应急救援
- 张亮穿泳裤出镜戏水耍酷 女粉丝见状大呼把持不住
- HUD 2094 产生冠军
- 大数据任务调度系统-Hera
- python dict sort_python sort dict 总结
- AD左侧菜单栏打开方法