前端点击预览图片:Viewer.js 使用方法
可爱的秋秋啊 2024-10-06 10:03:02 阅读 70
1、 Viewer.js简介
Viewer.js 是一款强大的图片查看器。我们通过Viewer.js 在页面上添加强大的图片查看功能,同时,这款优秀的插件配置操作起来也非常的方便。
Viewer.js分为2个版本,js版本和jquery版本,下载地址分别为
纯JS版本:GitHub - fengyuanchen/viewerjs: JavaScript image viewer.
jQuery 版本:GitHub - fengyuanchen/jquery-viewer: A jQuery plugin wrapper for Viewer.js.
2、Viewer.js支持的功能
支持移动设备触摸事件支持响应式支持放大/缩小支持旋转(类似微博的图片旋转)支持水平/垂直翻转支持图片移动支持键盘支持全屏幻灯片模式(可做屏保)支持缩略图支持标题显示支持多种自定义事件
3、Viewer.js的API
名称 | 类型 | 默认值 | 说明 |
---|---|---|---|
inline | 布尔值 | false | 启用 inline 模式 |
button | 布尔值 | true | 显示右上角关闭按钮(jQuery 版本无效) |
navbar | 布尔值/整型 | true | 显示缩略图导航 |
title | 布尔值/整型 | true | 显示当前图片的标题(现实 alt 属性及图片尺寸) |
toolbar | 布尔值/整型 | true | 显示工具栏 |
tooltip | 布尔值 | true | 显示缩放百分比 |
movable | 布尔值 | true | 图片是否可移动 |
zoomable | 布尔值 | true | 图片是否可缩放 |
rotatable | 布尔值 | true | 图片是否可旋转 |
scalable | 布尔值 | true | 图片是否可翻转 |
transition | 布尔值 | true | 使用 CSS3 过度 |
fullscreen | 布尔值 | true | 播放时是否全屏 |
keyboard | 布尔值 | true | 是否支持键盘 |
interval | 整型 | 5000 | 播放间隔,单位为毫秒 |
zoomRatio | 浮点型 | 0.1 | 鼠标滚动时的缩放比例 |
minZoomRatio | 浮点型 | 0.01 | 最小缩放比例 |
maxZoomRatio | 数字 | 100 | 最大缩放比例 |
zIndex | 数字 | 2015 | 设置图片查看器 modal 模式时的 z-index |
zIndexInline | 数字 | 0 | 设置图片查看器 inline 模式时的 z-index |
url | 字符串/函数 | src | 设置大图片的 url |
build | 函数 | null | 回调函数,具体查看演示 |
built | 函数 | null | 回调函数,具体查看演示 |
show | 函数 | null | 回调函数,具体查看演示 |
shown | 函数 | null | 回调函数,具体查看演示 |
hide | 函数 | null | 回调函数,具体查看演示 |
hidden | 函数 | null | 回调函数,具体查看演示 |
view | 函数 | null | 回调函数,具体查看演示 |
viewed | 函数 | null | 回调函数,具体查看演示 |
4、 按照和引入的方式
Javascript版:在html文件的head中直接引入文件
<code> <link href="static/js/viewer.min.css" rel="stylesheet">code>
<script src="static/js/viewer.min.js" type="application/javascript"></script>code>
jQuery版,需要多引入一个,在html文件的head中直接引入文件
<link href="static/js/viewer.min.css" rel="stylesheet">code>
<script src="static/js/viewer.min.js" type="application/javascript"></script>code>
<script src="static/js/jquery.min.js"></script>code>
npm,直接install
npm install viewerjs
5、使用方法(简单的操作)
我这里用的是一个js版本,简单做了一个demo , html代码如下:
<!DOCTYPE html>
<html lang="en">code>
<head>
<meta charset="utf-8">code>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>code>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">code>
<link href="static/js/viewer.min.css" rel="stylesheet">code>
<script src="static/js/viewer.min.js" type="application/javascript"></script>code>
<script src="static/js/jquery.min.js"></script> code>
</head>
<body>
<div class="container ">code>
<div id="image-gallery" style="display: none">code>
//这里面可以放多个图片,显示按照指定的索引进行(索引从0开始)
<img src="static/images/banner2.jpg" alt="Image 1">code>
</div>
// 点击显示预览图片
<div id="btn01" style="width: 70px;height: 30px;border: 1px solid #ccc;text-align: center;line-height: 30px;">点击</div>code>
</div>
</body>
//这里放js操作
</html
js代码,点击显示图片,操作事件
<script>
// 添加事件
document.addEventListener('DOMContentLoaded', function () {
// 获取点击后需要显示的图片id
var gallery = document.getElementById('image-gallery');
// 给显示的图片添加一下属性在dom中
var viewer = new Viewer(gallery, {
inline: false,
button: true,
navbar: true,
toolbar: true,
title: true,
tooltip: true,
movable: true,
zoomable: true,
rotatable: true,
scalable: true,
});
// 添加按钮点击事件
document.getElementById('btn01').addEventListener('click', function () {
// 这里指定要预览的图片索引
viewer.view(0); // 预览第一张图片(索引从0开始)
});
});
</script>
效果展示
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。