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 相关文章推荐
自己做的模拟模态对话框实现代码
May 23 Javascript
js中 关于undefined和null的区别介绍
Apr 16 Javascript
基于JQuery 滑动与动画的说明介绍
Apr 18 Javascript
JS中对象与字符串的互相转换详解
May 20 Javascript
Three.js学习之网格
Aug 10 Javascript
基于jQuery实现照片墙自动播放特效
Jan 12 Javascript
vue省市区三联动下拉选择组件的实现
Apr 28 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
Jun 22 Javascript
Vue.js实现网格列表布局转换方法
Aug 25 Javascript
Node.js 的 GC 机制详解
Jun 03 Javascript
解决小程序无法触发SESSION问题
Feb 03 Javascript
k8s node节点重新加入master集群的实现
Feb 22 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爆绝对路径方法收集整理
2012/09/17 PHP
php之XML转数组函数的详解
2013/06/07 PHP
Linux编译升级php的详细方法
2013/11/04 PHP
浅谈PHP中Stream(流)
2015/06/08 PHP
php解决和避免form表单重复提交的几种方法
2016/08/31 PHP
正则表达式搭配js轻松处理json文本方便而老古
2013/02/17 Javascript
javascript实现可改变滚动方向的无缝滚动实例
2013/06/17 Javascript
AngularJs解决跨域问题案例详解(简单方法)
2016/05/19 Javascript
JavaScript编写一个简易购物车功能
2016/09/17 Javascript
canvas绘制表盘时钟
2017/01/23 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
jQuery动态追加页面数据以及事件委托详解
2017/05/06 jQuery
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
2020/04/14 Javascript
[02:14]DOTA2英雄基础教程 修补匠
2013/12/23 DOTA
python之Character string(实例讲解)
2017/09/25 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
2017/09/25 Python
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
python计算两个矩形框重合百分比的实例
2018/11/07 Python
python获取微信企业号打卡数据并生成windows计划任务
2019/04/30 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
2021/01/29 Python
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
乌克兰在线电子产品商店:MTA
2019/11/14 全球购物
前台接待岗位职责
2013/12/03 职场文书
教师个人剖析材料
2014/02/05 职场文书
中学教师自我鉴定
2014/02/07 职场文书
安全责任书范文
2014/08/25 职场文书
离婚案件答辩状
2015/05/22 职场文书
员工手册董事长致辞
2015/07/29 职场文书
校园广播稿范文
2015/08/19 职场文书
分享几个简单MySQL优化小妙招
2022/03/31 MySQL
table设置超出部分隐藏,鼠标移上去显示全部内容的方法
2022/12/24 HTML / CSS