vue中使用viewerjs
项目创建
vue init webpack mytest001
安装viewerjs
npm install viewerjs
删掉生成的项目里面的helloWord.vue 修改路由 创建一个index.vue
index.vue代码:
<template>
<div id="index">
<ul>
<li v-for="(item,index) of imgArr"><img :src="item" alt="图片描述"></li>
</ul>
</div>
</template>
<script>
import Viewer from 'viewerjs';
import 'viewerjs/dist/viewer.css';
export default {
name: 'HelloWorld',
data() {
return {
imgArr:[
'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=3472263623,506218584&fm=26&gp=0.jpg',
'http://www.sinaimg.cn/dy/slidenews/21_img/2015_17/2236_4146071_705561.jpg',
'http://www.sinaimg.cn/dy/slidenews/21_img/2015_17/2236_4146072_346494.jpg'
]
}
},
mounted(){
const ViewerDom = document.getElementById('index');
const viewer = new Viewer(ViewerDom, {
// 相关配置项,详情见下面
});
}
}
</script>
<style>
*{
padding:0;
margin: 0;
}
ul {
display: flex;
flex-wrap: wrap;
}
ul li{
width:265px;
height: 180px;
list-style: none;
border:2px solid #CCC;
border-radius: 3px;
padding: 1px;
margin: 10px;
cursor: pointer;
}
ul li img{
width:100%;
height: 100%;
}
</style>
键盘事件
仅在modal mode下可用ESC 键: 退出全屏/关闭/退出/停止播放;Space 键: 停止/播放;←键: 查看上一张图片;→键: 查看下一张图片;↑键: 放大图片;↓键: 缩小图片;Ctrl + 0 组合键: 缩小到初始大小;Ctrl + 1 组合键: 放大到原始大小;
配置参数
如果要更改全局默认选项,可以使用view . setdefaults(选项)
| 参数名称 | 参数类型 | 默认值 | 说明 |
|---|---|---|---|
| initialViewIndex | Number | 0 | 定义用于查看的图像的初始索引 |
| inline | Boolean | false | 支持 inline mode |
| button | Boolean | true | 是否显示查看图片时右上角的关闭按钮 |
| navbar | Boolean / Number | true | 是否显示底部导航栏 0 或者 false :不显示 1 或者 true :显示 2 :当屏幕宽度大于768px时显示 3 :当屏幕宽度大于992px时显示 4 :当屏幕宽度大于1200px时显示 |
| title | Boolean / Number / Function / Array |
true |
0 或者 false 时不显示1或者true或者function或者array时显示2 :当屏幕宽度大于768px时显示 3 :当屏幕宽度大于992px时显示 4 :当屏幕宽度大于1200px时显示function 在函数体内返回标题array 第一个参数表示可见性(0-4) 第二个参数就是标题 |
| toolbar | Boolean / Number / Object | true | 标题栏是否显示和布局 0 或者 false 时不显示1或者true或者时显示 2 :当屏幕宽度大于768px时显示 3 :当屏幕宽度大于992px时显示 4 :当屏幕宽度大于1200px时显示 Object : Object类型详解
|
| tooltip | Boolean | true | 放大或缩小时显示的百分比的文字提示true : 显示 false : 不显示 |
| movable | Boolean | true | 是否可以拖动图片 |
| zoomable | Boolean | true | 是否可以缩放图片 |
| rotatable | Boolean | true | 是否可以旋转图片 |
| scalable | Boolean | true | 是否可以缩放图片 |
| transition | Boolean | true | 为一些特殊元素启用CSS3转换。 |
| fullscreen | Boolean | true | 允许全屏播放 |
| keyboard | Boolean | true | 启用键盘支持 |
| backdrop | Boolean / String | true | 启用 modal 为false的时候不支持点击背景关闭 |
| loading | Boolean | true | 加载图片的时候的loading图标 |
| loop | Boolean | true | 是否可以循环查看图片 |
| interval | Number | 5000 | 定义图片查看器的最小的宽度 |
| minWidth | Number | 200 | 定义图片查看器的最小的高度 |
| minHeight | Number | 100 | 播放图片时 距离下一张图片的间隔时间 |
| zoomRatio | Number | 0.1 | 利用鼠标滚轮缩放图片时的比例 |
| minZoomRatio | Number | 0.01 | 缩小图片的最小比例 |
| maxZoomRatio | Number | 100 | 放大图片的放大比例 |
| zIndex | Number | 2015 | 定义查看器的CSS z-index值 modal 模式下 |
| zIndexInline | Number | 0 | 定义查看器的CSS z-index值 inline 模式下 |
| url | String / Function | src | 原始图像URL 如果是一个字符串,应该图像元素的属性之一 如果是一个函数,应该返回一个有效的图像URL |
| container | Element / String | body | 将查看器置于modal模式的容器 只有在 inline为 false的时候才可以使用 |
| filter | Function | null | 过滤图像以便查看(如果图像是可见的,应该返回true) |
| toggleOnDblclick | Boolean | true | 当你放大或者缩小图片时 双击还原 |
| ready | Function | null | 当查看图片时被触发的函数 只会触发一次 |
| show | Function | null | 当查看图片时被触发的函数 每次查看都会触发 |
| shown | Function | null | 当查看图片时被触发的函数 每次查看都会触发 在show之后 |
| hide | Function | null | 当关闭图片查看器时被触发的函数 每次关闭都会触发 |
| hidden | Function | null | 当关闭图片查看器时被触发的函数 每次关闭都会触发 在hide之后 |
| view | Function | null | 当查看图片时被触发的函数 每次查看都会触发 在shown之后 |
| viewed | Function | null | 当查看图片时被触发的函数 每次查看都会触发 在view之后 |
| zoom | Function | null | 在图片缩放时触发 |
| zoomed | Function | null | 在图片缩放时触发 在 zoom之后 |
toolbar Object详解
key值列表: "zoomIn", "zoomOut", "oneToOne", "reset", "prev", "play", "next", "rotateLeft", "rotateRight", "flipHorizontal", "flipVertical"
| key值名称 | 说明 |
|---|---|
| zoomIn | 放大图片的按钮 |
| zoomOut | 缩小图片的按钮 |
| reset | 重置图片大小的按钮 |
| prev | 查看上一张图片的按钮 |
| next | 查看上一张图片的按钮 |
| play | 播放图片的按钮 |
| rotateLeft | 向左旋转图片的按钮 |
| rotateRight | 向右旋转图片的按钮 |
| flipHorizontal | 图片左右翻转的按钮 |
| flipVertical | 图片上下翻转的按钮 |
{key:number|Boolean} 显示或者隐藏对应key的按钮 为Number的时候为可见性
{key: String } 自定义按钮的大小
{ key: Function } 自定义按钮点击的处理
{ key: { show: Boolean | Number, size: String, click: Function } 自定义按钮的每个属性
size的取值范围: small medium default large
原文地址:https://segmentfault.com/a/1190000016584946
vue中使用viewerjs的更多相关文章
- Vue 中使用 viewerjs
安装 viewerjs npm install viewerjs --save 创建一个 Viewer.vue 组件 <template> <div id="index&q ...
- Vue 中使用 viewerjs进行本地上传预览图片
https://www.cnblogs.com/shenjp/p/9754171.html 如果图片路径是 接口的返回信息的话,将路径存储在数组中,在this.$nextTick中实例化Viewer: ...
- 在 vue 中使用 vieiwer 图片预览插件
https://blog.csdn.net/WestLonly/article/details/79801800?utm_source=blogxgwz0 首先,感谢原作者 官网链接 github地址 ...
- vue中如何不通过路由直接获取url中的参数
前言:为什么要不通过路由直接获取url中的参数? vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的. 相对来说,在某些情况下直接 ...
- vue中的重要特性
一.vue中的自定义组件 html的代码: <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- Vue中comoputed中的数据绑定
Vue中的数据实现响应式绑定是在初始化的时候利用definePrototype的定义set和get过滤器,在进行组件模板编译时实现water的监听搜集依赖项,当数据发生变化时在set中通过调用dep. ...
- vue中使用stompjs实现mqtt消息推送通知
最近在研究vue+webAPI进行前后端分离,在一些如前端定时循环请求后台接口判断状态等应用场景用使用mqtt进行主动的消息推送能够很大程度的减小服务端接口的压力,提高系统的效率,而且可以利用mqtt ...
- Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理
基本概念部分(一):理解CORS 说道Vue的跨域AJAX,我想先梳理一遍CORS跨域,"跨域资源共享"(Cross-origin resource sharing),它是一个W3 ...
- vue中watched属性
watched属性,vue中的观察属性,可用来监听一个值的变化 默认有两个参数,新值,旧值 data (){ return { currentCity: "深圳" } } watc ...
随机推荐
- "啃下"插入排序
插入排序法基本原理 插入排序法较冒泡排序法和选择排序法更贴近生活,应该来说理解起来更快.如果你现在能够得到一副麻将,请把里面的“一万”到“六万”拿出来,打乱顺序,再重新排好,就像打麻将开始那样.是否需 ...
- BZOJ 2754 [SCOI2012]喵星球上的点名 (AC自动机+map维护Trie树)
题目大意:略 由于字符集大,要用map维护Trie树 并不能用AC自动机的Trie图优化,不然内存会炸 所以我用AC自动机暴跳fail水过的 显然根据喵星人建AC自动机是不行的,所以要根据问题建 然而 ...
- input只能输入数字或两位小数
/** * [只能输入数字和两位小数] * 举例:<input type="text" onkeyup="num(this)" size="10 ...
- java JSON 和 Object 相互转换
1.导入 jackson jar <dependency> <groupId>com.fasterxml.jackson.core</groupId> <ar ...
- PHP中对hmac_sha1签名算法的实现方法
最近研究网宿云文档API,其中用到了一种叫hmac_sha1的签名算法: HMAC-SHA1: HMAC是哈希运算消息认证码 (Hash-based Message Authentication Co ...
- <pre>标签
<pre>标签最主要的认识就是预格式化文本,被包围在 pre 元素中的文本一般会保留空格和换行符.而文本也会呈现为等宽字体.经经常使用于在网页中显示计算机源码. 1.格式化文本举例 &l ...
- linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
解决cocos2d-x中编译出现的一个小问题 对于cocos2d-x 2.×中编译中,若头文件里引入了#include "cocos-ext.h",在进行C++编译的时候会遇到例如 ...
- hdu2838Cow Sorting(树状数组+逆序数)
题目链接:点击打开链接 题意描写叙述:给定一个长度为100000的数组,每一个元素范围在1~100000,且互不同样,交换当中的随意两个数须要花费的代价为两个数之和. 问怎样交换使数组有序.花费的代价 ...
- python 提取主域名和子域名代码——先根据规则提取,如果有问题,则使用tldextract
import tldextract def extract_domain(domain): suffix = {'.com','.la','.io', '.co', '.cn','.info', '. ...
- Python 异常(Exception)
1. 字符串为构造函数的参数 >> raise Exception('hyperdirve overload') Exception Traceback (most recent call ...