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的动态添加控件并取值的实现代码
Sep 24 Javascript
父子窗体间传递JSON格式的数据的代码
Dec 25 Javascript
让新消息在网页标题闪烁提示的jQuery代码
Nov 04 Javascript
实例解析jQuery插件EasyUI最常用的表单验证规则
Nov 29 Javascript
JS折半插入排序算法实例
Dec 02 Javascript
ES6中如何使用Set和WeakSet
Mar 10 Javascript
javascript基本数据类型及类型检测常用方法小结
Dec 14 Javascript
拖动时防止选中
Feb 03 Javascript
jQuery监听浏览器窗口大小的变化实例
Feb 07 Javascript
JavaScript实现简单图片轮播效果
Aug 21 Javascript
解决vue组件中使用v-for出现告警问题及v for指令介绍
Nov 11 Javascript
15分钟上手vue3.0(小结)
May 20 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获取网络文件的实现代码
2010/01/01 PHP
检查用户名是否已在mysql中存在的php写法
2014/01/20 PHP
php解决约瑟夫环示例
2014/04/09 PHP
PHP获取photoshop写入图片文字信息的方法
2015/03/31 PHP
Yii2实现ajax上传图片插件用法
2016/04/28 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
JavaScript中的Location地址对象
2008/01/16 Javascript
js带按钮的提示框可供选择示例代码
2013/09/17 Javascript
文本框倒叙输入让输入框的焦点始终在最开始的位置
2014/09/01 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
javascript将DOM节点添加到文档的方法实例分析
2015/08/04 Javascript
JavaScript中的原型继承基础学习教程
2016/05/06 Javascript
在IE8上JS实现combobox支持拼音检索功能
2016/05/23 Javascript
AngularJS创建自定义指令的方法详解
2016/11/03 Javascript
javascript中活灵活现的Array对象详解
2016/11/30 Javascript
JS实现图片居中悬浮效果
2017/12/25 Javascript
Angular4.0动画操作实例详解
2019/05/10 Javascript
KnockoutJS数组比较算法实例详解
2019/11/25 Javascript
vue页面跳转实现页面缓存操作
2020/07/22 Javascript
python 多进程通信模块的简单实现
2014/02/20 Python
python实现简单温度转换的方法
2015/03/13 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
2016/06/30 Python
各种Python库安装包下载地址与安装过程详细介绍(Windows版)
2016/11/02 Python
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
2019/07/11 Python
如何用Python提取10000份log中的产品信息
2021/01/14 Python
雷蛇美国官网:Razer
2020/04/03 全球购物
介绍一下Python下range()函数的用法
2013/11/07 面试题
现役军人家属慰问信
2015/03/24 职场文书
民事起诉状范文
2015/05/19 职场文书
文化苦旅读书笔记
2015/06/29 职场文书
党校培训学习心得体会
2016/01/06 职场文书
2016大学军训心得体会
2016/01/11 职场文书
教你怎么用Python selenium操作浏览器对象的基础API
2021/06/23 Python
python turtle绘图命令及案例
2021/11/23 Python
CSS 左边固定宽右边自适应的6种方法
2022/05/15 HTML / CSS