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 相关文章推荐
用jQuery技术实现Tab页界面之二
Sep 21 Javascript
javascript重复绑定事件造成的后果说明
Mar 02 Javascript
javascript-简单的计算器实现步骤分解(附图)
May 30 Javascript
Js,alert出现乱码问题的解决方法
Jun 19 Javascript
JS实现支持多选的遍历下拉列表代码
Aug 20 Javascript
浅谈js算法和流程控制
Dec 29 Javascript
JS实现页面打印功能
Mar 16 Javascript
jQuery中each遍历的三种方法实例分析
Sep 07 jQuery
vue单页缓存存在的问题及解决方案(小结)
Sep 25 Javascript
vue使用Google地图的实现示例代码
Dec 19 Javascript
微信小程序的注册页面包含倒计时验证码、获取用户信息
May 22 Javascript
详解基于 Node.js 的轻量级云函数功能实现
Jul 08 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
Dwz与thinkphp整合下的数据导出到Excel实例
2014/12/04 PHP
php支付宝手机网页支付类实例
2015/03/04 PHP
php返回相对时间(如:20分钟前,3天前)的方法
2015/04/14 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
一个JavaScript递归实现反转数组字符串的实例
2014/10/14 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
2014/10/17 Javascript
JS替换字符串中空格方法
2015/04/17 Javascript
基于jquery实现左右按钮点击的图片切换效果
2021/01/27 Javascript
javascript学习指南之回调问题
2016/04/23 Javascript
JavaScript SHA1加密算法实现详细代码
2016/10/06 Javascript
Javascript中内建函数reduce的应用详解
2016/10/20 Javascript
js实现兼容PC端和移动端滑块拖动选择数字效果
2017/02/16 Javascript
JS删除数组里的某个元素方法
2018/02/03 Javascript
微信小程序Echarts图表组件使用方法详解
2019/06/25 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
解决VueCil代理本地proxytable无效报错404的问题
2020/11/07 Javascript
python数字图像处理之高级滤波代码详解
2017/11/23 Python
python使用logging模块发送邮件代码示例
2018/01/18 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
python 计算平均平方误差(MSE)的实例
2019/06/29 Python
python 实现保存最新的三份文件,其余的都删掉
2019/12/22 Python
使用python的pyplot绘制函数实例
2020/02/13 Python
Django框架配置mysql数据库实现过程
2020/04/22 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
五个2015 年最佳HTML5 框架
2015/11/11 HTML / CSS
香港草莓网:Strawberrynet香港
2019/05/10 全球购物
俄罗斯品牌服装和鞋子的在线商店:KUPIVIP
2019/10/27 全球购物
奥地利婴儿用品和玩具购物网站:baby-markt.at
2020/01/26 全球购物
介绍一下linux的文件权限
2012/02/15 面试题
自我评价如何写好?
2014/01/05 职场文书
三年级数学教学反思
2014/01/31 职场文书
优秀员工获奖感言
2014/03/01 职场文书
三月学雷锋月活动总结
2014/04/28 职场文书
软弱涣散基层党组织整改方案
2014/10/25 职场文书
2016三八妇女节校园广播稿
2015/12/17 职场文书
golang elasticsearch Client的使用详解
2021/05/05 Golang