hammer.js简单案例怎么用?hammer.js手势识别教程
- 前端开发
- 2026-07-01
- 5
Hammer.js 是一个轻量级的 JavaScript 库,专门用于处理多点触控手势,在现代 Web 开发中,随着移动设备的普及,用户期望在网页上获得类似原生应用的交互体验,如滑动、缩放、旋转等,Hammer.js 通过封装复杂的触摸事件逻辑,让开发者能够以极简的代码实现这些高级手势功能,为了帮助你快速上手,下面将详细介绍一个 Hammer.js 的简单案例,涵盖从引入库到实现具体手势识别的全过程。
你需要在项目中引入 Hammer.js,可以通过 CDN 链接直接引入,或者使用 npm 安装,在 HTML 文件中,确保在 body 标签结束前引入库文件,引入后,你需要选择一个 DOM 元素作为手势识别的目标容器,这个容器可以是整个页面,也可以是某个特定的 div 或按钮,我们创建一个简单的 div 元素,并赋予它唯一的 ID,以便后续绑定事件。
实例化 Hammer 对象,这是使用 Hammer.js 的核心步骤,通过 new Hammer(element) 创建一个手势管理器实例,你可以配置全局选项,例如是否启用双击、是否允许默认浏览器行为等,配置完成后,就可以开始监听具体的手势事件了,Hammer.js 支持多种手势,包括 tap(点击)、swipe(滑动)、pan(拖拽)、pinch(捏合缩放)和 rotate(旋转)等。

为了演示,我们构建一个包含文本显示区域和交互容器的简单案例,当用户在容器上进行滑动操作时,页面上的文本会更新为“检测到滑动”;当用户点击时,文本更新为“检测到点击”,这种动态反馈能直观地展示手势识别的效果。
| 手势类型 | 描述 | 常用事件名 | 适用场景 |
|---|---|---|---|
| Tap | 快速点击 | tap | 按钮点击、菜单选择 |
| Swipe | 快速滑动 | swipe | 图片轮播、列表滑动 |
| Pan | 拖拽移动 | pan | 地图拖拽、卡片滑动 |
| Pinch | 双指捏合 | pinch |
图片缩放、地图缩放
|
| Rotate | 双指旋转 | rotate | 3D 模型旋转、图片角度调整 |

