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 相关文章推荐
控制打印时页眉角的代码
Feb 08 Javascript
js实现兼容IE6与IE7的DIV高度
May 13 Javascript
基于Jquery的标签智能验证实现代码
Dec 27 Javascript
TreeView 用法(有代码)(asp.net)
Jul 15 Javascript
JS限制上传图片大小不使用控件在本地实现
Dec 19 Javascript
jquery parent和parents的区别分析
Oct 02 Javascript
jquery获取复选框被选中的值
Apr 10 Javascript
jQuery基于Ajax方式提交表单功能示例
Feb 10 Javascript
vue脚手架搭建过程图解
Jun 06 Javascript
快速解决vue动态绑定多个class的官方实例语法无效的问题
Sep 05 Javascript
JS面向对象之单选框实现
Jan 17 Javascript
在vue中使用防抖函数组件操作
Jul 26 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+MYSQL的文章管理系统(二)
2006/10/09 PHP
PHP安装攻略:常见问题解答(二)
2006/10/09 PHP
php 创建以UNIX时间戳命名的文件夹(示例代码)
2014/03/08 PHP
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
javascript开发技术大全-第1章javascript概述
2011/07/03 Javascript
javascript string字符串优化问题
2011/07/31 Javascript
javascript学习笔记(十三) js闭包介绍(转)
2012/06/20 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
2013/05/27 Javascript
js this函数调用无需再次抓获id,name或标签名
2014/03/03 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
javascript中with()方法的语法格式及使用
2014/08/04 Javascript
js实现简单的左右两边固定广告效果实例
2015/04/10 Javascript
js实现温度计时间样式代码分享
2015/08/21 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
基于jquery实现左右按钮点击的图片切换效果
2021/01/27 Javascript
浅谈js算法和流程控制
2016/12/29 Javascript
在javascript中,null>=0 为真,null==0却为假,null的值详解
2017/02/22 Javascript
React教程之Props验证的具体用法(Props Validation)
2017/09/04 Javascript
zTree jQuery 树插件的使用(实例讲解)
2017/09/25 jQuery
angular动态表单制作
2018/02/23 Javascript
详解vue中的父子传值双向绑定及数据更新问题
2019/06/13 Javascript
vue项目中锚点定位替代方式
2019/11/13 Javascript
微信小程序 (地址选择1)--选取搜索地点并显示效果
2019/12/17 Javascript
vue-cli3项目配置eslint代码规范的完整步骤
2020/09/10 Javascript
python 实现敏感词过滤的方法
2019/01/21 Python
python 进制转换 int、bin、oct、hex的原理
2021/01/13 Python
Jogun Shop中文官网:韩国知名时尚男装网站
2016/10/12 全球购物
英国家用电器购物网站:Hughes
2018/02/23 全球购物
会计应聘求职信范文
2013/12/17 职场文书
遗嘱公证书标准样本
2014/04/08 职场文书
家长会演讲稿
2014/04/26 职场文书
我的中国梦演讲稿1000字
2014/08/19 职场文书
教师个人年终总结
2015/02/11 职场文书
SQL实现LeetCode(178.分数排行)
2021/08/04 MySQL
Java生成日期时间存入Mysql数据库的实现方法
2022/03/03 Java/Android
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang