Skip to content

基础使用

本指南将引导您了解 ImagesViewer 的基本使用方法,包括如何创建实例、在图片之间导航以及使用核心功能。

创建实例

有多种方式创建 ImagesViewer 实例:

单张图片

javascript
// 单张图片 URL
const viewer = new ImagesViewer('path/to/image.jpg');

多张图片

javascript
// 多张图片作为数组
const viewer = new ImagesViewer(['image1.jpg', 'image2.jpg', 'image3.jpg']);

// 多张图片带选项
const viewer = new ImagesViewer({
  images: ['image1.jpg', 'image2.jpg', 'image3.jpg']
});

带配置

javascript
const viewer = new ImagesViewer({
  images: ['image1.jpg', 'image2.jpg', 'image3.jpg'],
  closeOnMaskClick: true,
  loop: true,
  buttons: {
    zoomIn: true,
    zoomOut: true,
    download: true
  }
});

基本导航

下一张/上一张图片

javascript
// 前往下一张图片
viewer.next();

// 前往上一张图片
viewer.prev();

// 跳转到指定图片
viewer.loadCurrentImage(2); // 加载第 3 张图片(0 索引)

键盘导航

ImagesViewer 支持键盘快捷键导航:

快捷键操作
上一张图片
下一张图片
Esc关闭查看器
+放大
-缩小
0重置缩放
F切换全屏
I切换信息面板

缩放和旋转

缩放

javascript
// 放大 10%
viewer.zoom(0.1);

// 缩小 10%
viewer.zoom(-0.1);

// 重置缩放
viewer.reset();

// 显示原始尺寸
viewer.showOriginalSize();

旋转

javascript
// 顺时针旋转 90 度
viewer.rotate(90);

// 逆时针旋转 90 度
viewer.rotate(-90);

全屏模式

javascript
// 切换全屏
viewer.toggleFullscreen();

下载图片

javascript
// 下载当前图片
viewer.downloadImage();

关闭查看器

javascript
// 关闭查看器
viewer.close();

事件回调

您可以使用回调函数监听各种事件:

javascript
const viewer = new ImagesViewer({
  images: ['image1.jpg', 'image2.jpg'],
  onShow: function(container) {
    console.log('查看器显示:', container);
  },
  onClose: function() {
    console.log('查看器关闭');
  },
  onChange: function(data) { 
    console.log('图片改变:', data);
  }
});

鼠标和触摸操作

鼠标操作

  • 拖动:按住鼠标左键拖动图片
  • 缩放:使用鼠标滚轮缩放
  • 双击:切换缩放状态

触摸操作

  • 单指拖动:移动图片
  • 双指捏合:缩放图片
  • 双击:切换缩放状态

基础示例

以下是使用 ImagesViewer 的完整示例:

html
<!DOCTYPE html>
<html>
  <head>
    <title>ImagesViewer 示例</title>
  </head>
  <body>
    <button onclick="openViewer()">查看图片</button>

    <script src="https://cdn.jsdelivr.net/npm/images-viewer-js@latest/dist/index.js"></script>
    <script>
      function openViewer() {
        const viewer = new ImagesViewer({
          images: [
            'https://example.com/image1.jpg',
            'https://example.com/image2.jpg',
            'https://example.com/image3.jpg'
          ],
          closeOnMaskClick: true,
          imageInfo: {
            visible: true
          },
          buttons: {
            zoomIn: true,
            zoomOut: true,
            download: true,
            fullscreen: true
          }
        });
      }
    </script>
  </body>
</html>

使用 MIT 许可证发布。