vue基于viewer实现的图片查看器功能


Posted in Javascript onApril 12, 2019

vue2-viewer

vue2-viewer 是一款强大的图像浏览插件,可以实现图像的放大预览,旋转,任意比例放大和缩小等功能

vue2-viewer 是viewer.js vue的实现,效果以及样式完全移植自viewer.js关于viewer.js可以参考链接

[http://fengyuanchen.github.io...]

插件中所有的效果均大量地使用了css3的新特性替换了viewer.js中的js动画,所以vue2-viewer主要实用场景是现代浏览器中。

使用文档

安装

npm install --save vue2-viewer

在main.js中引入并使用插件

import ImageViewer from 'vue2-viewer';
Vue.use(ImageViewer);

插件会在全局注册vue-viewer组件

使用组件

vue2-viewer 提供两种使用模式,单图片模式和多图列表模式。

单图片模式

props

参数 说明 类型 必须
thumb 要显示的小图的链接 string true
full 点击放大后的大图链接 string true

示例:

<vue-viewer style="display: inline-block"
 :thumb="image"
 :full="image">
</vue-viewer>
<script>
export default {
 name: 'app',
 data () {
 return {
  msg: 'vue2-viewer-test',
  image: 'https://ss0.baidu.com/6ONWsjip0QIZ8tyhnq/it/u=3427452369,2586833644&fm=173&app=25&f=JPEG?w=580&h=347&s=908FF35A050626E2428C001E030090D6',
 }
 }
}
</script>

效果展示:

 vue基于viewer实现的图片查看器功能

多图片模式

props

参数 说明 类型 必须
thumb 要显示的小图列表的链接数组 array true
full 点击放大后的大图的链接数组 array true
list-ul-class 默认小图的列表外层ul的自定义class 用于自定义列表的样式,包括ul内部的slot的内容的样式都可以通过这个方式自定义 string false

Scoped Slot

name 说明
~ 列表中的每一个元素中除了默认图以外的内容

示例:

<vue-viewer multiple
 :thumb="imageList"
 list-ul-class="image-list"
 :full="imageList">
 <!--在列表中加入右上角删除按钮-->
 <template slot-scope="target">
 <span class="icon-remove" @click.stop="onRemove(target.index)" style="">×</span>
 </template>
</vue-viewer>
<script>
export default {
 name: 'app',
 data () {
 return {
  msg: 'vue2-viewer-test',
  imageList: [
  'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1550224739247&di=512032866bea6329b1e46c735d50ac8b&imgtype=0&src=http%3A%2F%2Fimglf2.ph.126.net%2FdHH6OM2rD8JucPGAotUfag%3D%3D%2F6608219914074710297.jpg',
  'https://ss0.baidu.com/6ONWsjip0QIZ8tyhnq/it/u=488030022,1694816207&fm=173&app=25&f=JPEG?w=580&h=347&s=A08FB35A5E0616C664F5631C030010D6',
  'https://ss0.baidu.com/6ONWsjip0QIZ8tyhnq/it/u=2574767313,3929397124&fm=173&app=25&f=JPEG?w=580&h=868&s=B784EEA3460236E17A1F137F0300A058'
  ]
 }
 },
 methods: {
 onRemove(index) {
  alert(index);
 }
 }
}
</script>
<style>
.image-list{
 margin: 0; padding: 0
}
.image-list li {
 display: inline-block;
 margin: 0 10px;
 list-style: none;
 position: relative;
}
.image-list li img {
 box-shadow: 0 0 5px #333;
}
.icon-remove{
 width: 20px; height:20px; 
 text-align: center; line-height: 20px;
 background:#f33; 
 position:absolute; top:-10px; right:-10px;
 border-radius: 10px;
 cursor: pointer;
 color:#fff;
}
a {
 color: #42b983;
}
</style>

效果展示:

vue基于viewer实现的图片查看器功能

总结

以上所述是小编给大家介绍的vue基于viewer实现的图片查看器功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
javascript原生和jquery库实现iframe自适应高度和宽度
Jul 18 Javascript
js限制文本框只能输入整数或者带小数点的数字
Apr 27 Javascript
详细探究ES6之Proxy代理
Jul 22 Javascript
jQuery仿京东商城楼梯式导航定位菜单
Jul 25 Javascript
关于jquery中动态增加select,事件无效的快速解决方法
Aug 29 Javascript
JS中的phototype详解
Feb 04 Javascript
javascript中关于类型判断的一些疑惑小结
Oct 14 Javascript
微信小程序上传图片到php服务器的方法
May 23 Javascript
vue实现分页栏效果
Jun 28 Javascript
vue基本使用--refs获取组件或元素的实例
Nov 07 Javascript
微信小程序接入vant Weapp组件的详细步骤
Oct 28 Javascript
js 实现碰撞检测的示例
Oct 28 Javascript
js form表单input框限制20个字符,10个汉字代码实例
Apr 12 #Javascript
详解js创建对象的几种方法及继承
Apr 12 #Javascript
详解JQuery基础动画操作
Apr 12 #jQuery
React中阻止事件冒泡的问题详析
Apr 12 #Javascript
TypeScript中的方法重载详解
Apr 12 #Javascript
vue-cli 3.x配置跨域代理的实现方法
Apr 12 #Javascript
解决微信小程序调用moveToLocation失效问题【超简单】
Apr 12 #Javascript
You might like
一个php导出oracle库的php代码
2009/04/20 PHP
PHP Directory 函数的详解
2013/03/07 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
php比较两个字符串长度的方法
2015/07/13 PHP
js中top/parent/frame概述及案例应用
2013/02/06 Javascript
瀑布流布局并自动加载实现代码
2013/03/12 Javascript
url参数中有+、空格、=、%、&amp;、#等特殊符号的问题解决
2013/05/15 Javascript
js/jQuery简单实现选项卡功能
2014/01/02 Javascript
通过JS来判断页面控件是否获取焦点
2014/01/03 Javascript
jQuery 删除或是清空某个HTML元素示例
2014/08/04 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
原生js制作简单的数字键盘
2015/04/24 Javascript
很棒的js Tab选项卡切换效果
2016/08/30 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
微信小程序 增、删、改、查操作实例详解
2017/01/13 Javascript
详解ES6系列之私有变量的实现
2018/11/21 Javascript
NVM安装nodejs的方法实用步骤
2019/01/16 NodeJs
JS使用cookie保存用户登录信息操作示例
2019/05/30 Javascript
node.JS的crypto加密模块使用方法详解(MD5,AES,Hmac,Diffie-Hellman加密)
2020/02/06 Javascript
python时间整形转标准格式的示例分享
2014/02/14 Python
Linux 下 Python 实现按任意键退出的实现方法
2016/09/25 Python
Python实现基于C/S架构的聊天室功能详解
2018/07/07 Python
Python实现去除列表中重复元素的方法总结【7种方法】
2019/02/16 Python
python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)
2019/06/27 Python
wxPython多个窗口的基本结构
2019/11/19 Python
python 串口读取+存储+输出处理实例
2019/12/26 Python
使用Jupyter notebooks上传文件夹或大量数据到服务器
2020/04/14 Python
python 读取二进制 显示图片案例
2020/04/24 Python
Python基于Tkinter编写crc校验工具
2020/05/06 Python
CSS3中文字镂空、透明值、阴影效果设置示例小结
2016/03/07 HTML / CSS
人力资源管理专业学生自我评价
2013/11/20 职场文书
大学生的四年学习自我评价
2013/12/13 职场文书
大学生优秀班干部事迹材料
2014/05/26 职场文书
承诺书范文
2014/06/03 职场文书
对外汉语专业大学生职业生涯规划范文
2014/09/13 职场文书
css布局巧妙技巧之css三角示例的运用
2022/03/16 HTML / CSS