公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Hammer.js,一款用于手機(jī)屏幕移動(dòng)端開發(fā)的神奇 JavaScript 開源多點(diǎn)觸摸手勢(shì)庫(kù)

admin
2024年10月12日 10:7 本文熱度 1007
  • Github Star: 24k[1]

  • 官網(wǎng)[2]

1、Hammer.js 是什么?

Hammer.js 是一個(gè)開源的輕量級(jí) JavaScript 庫(kù),專門用于識(shí)別和處理移動(dòng)設(shè)備上的觸摸手勢(shì)。它能夠識(shí)別包括點(diǎn)擊、雙擊、拖動(dòng)、縮放、旋轉(zhuǎn)等多種手勢(shì),可以在不依賴其他框架的情況下獨(dú)立使用,而且很輕量壓縮后僅 7.34KB。Hammer.js 的設(shè)計(jì)目的是簡(jiǎn)化移動(dòng)端開發(fā)中的手勢(shì)識(shí)別過程,提供高性能的交互體驗(yàn).

核心特性

  • 手勢(shì)識(shí)別:提供了一系列預(yù)設(shè)的手勢(shì)識(shí)別器,如拖動(dòng)、縮放、旋轉(zhuǎn)等,并且允許自定義新的手勢(shì)識(shí)別器。

  • 事件處理:通過簡(jiǎn)單的 API,開發(fā)者可以為特定的手勢(shì)綁定事件處理函數(shù),實(shí)現(xiàn)自定義的交互邏輯。

  • 性能優(yōu)化:進(jìn)行了性能優(yōu)化,減少不必要的計(jì)算并有效利用硬件加速,保證流暢的用戶體驗(yàn)。

  • 跨平臺(tái)支持:兼容多種移動(dòng)設(shè)備和桌面瀏覽器,確保廣泛的應(yīng)用范圍.

2、應(yīng)用場(chǎng)景

Hammer.js 應(yīng)用于需要精細(xì)觸摸交互的移動(dòng) Web 應(yīng)用和游戲開發(fā)中。它可以用于實(shí)現(xiàn)圖片輪播、地圖縮放、游戲控制等功能。

3、快速開始

在項(xiàng)目中使用 Hammer.js ,需要通過 npm 或 yarn 將 Hammer.js 安裝。

npm install --save hammerjs
# 或
yarn add hammerjs

示例代碼中,使用 CDN 引入 Hammer.js。首先定義 DOM 結(jié)構(gòu)如下:

<div id="app">
  <div class="wrapper">
    <div class="square" id="tap">輕擊</div>
    <div class="square" id="doubleTap">雙擊</div>
    <div class="square" id="press">長(zhǎng)按</div>
    <div class="square" id="swipe">滑動(dòng)</div>
  </div>
</div>
<script
  src="https://cdnjs.cloudflare.com/ajax/libs/hammer.js/2.0.8/hammer.js"
  integrity="sha512-qRj8N7fxOHxPkKjnQ9EJgLJ8Ng1OK7seBn1uk8wkqaXpa7OA13LO6txQ7+ajZonyc9Ts4K/ugXljevkFTUGBcw=="
  crossorigin="anonymous"
  referrerpolicy="no-referrer"
>
</script>
<script type="module" src="./index.js"></script>

創(chuàng)建 Hammer 對(duì)象,定義識(shí)別器和注冊(cè)回調(diào)事件。

const $ = e => document.querySelector(e)
// 輕擊事件
const tapManager = new Hammer.Manager($('#tap'))
// 定義觸發(fā)器
const tap = new Hammer.Tap({
  taps1
})
// 添加到 manager 中
tapManager.add(tap)
// 注冊(cè)回調(diào)
tapManager.on('tap'(e) => {
  e.target.classList.toggle('expand');
});

效果如下(具體實(shí)現(xiàn)回復(fù) “demo”獲取)

4、核心API

手勢(shì)識(shí)別事件

Hammer.js 支持多種手勢(shì)識(shí)別,以下是一些常用的識(shí)別器:

  • Pan 事件:手指按下并移動(dòng),就是觸摸屏的拖動(dòng)。包括 panstartpanmovepanendpancancel以及方向性事件如panleftpanrightpanuppandown

  • Pinch 事件:當(dāng)兩根手指或多根手指相對(duì)移動(dòng)或相向移動(dòng)時(shí)觸發(fā)。包括 pinchstartpinchmovepinchendpinchcancel 以及 pinchn(手指距離變近)和 pinchout(手指距離變遠(yuǎn))事件

  • Rotate 事件:當(dāng)兩根手指或更多手指呈圓形旋轉(zhuǎn)時(shí)觸發(fā)。包括 rotatestartrotatemoverotateend 和 rotatecancel 事件 。

  • Press 事件:在指定的DOM對(duì)象中,進(jìn)行按壓的點(diǎn)擊事件,相當(dāng)于 PC 端的 click 事件,最小按壓時(shí)間為500ms。包括 pressup 事件 。

  • Tap 和 Doubletap 事件:點(diǎn)按和雙擊手勢(shì)。

  • Swipe 事件:快速滑動(dòng)手勢(shì),可以設(shè)置方向性,例如僅水平或垂直方向

Hammer.js 允許同時(shí)監(jiān)聽多個(gè)手勢(shì)、自定義識(shí)別器,并且可以通過 recognizeWith和 requireFailure 等方法來定義識(shí)別器之間的關(guān)系 。默認(rèn)情況下,pinch 和 rotate 識(shí)別器是禁用的,如果需要使用它們,可以通過設(shè)置 enable: true 來啟用 。

5、總結(jié)

Hammer.js,這個(gè)小巧的 JavaScript 庫(kù)讓移動(dòng)設(shè)備上的手勢(shì)操作變得超簡(jiǎn)單。不管是輕點(diǎn)、滑動(dòng)還是捏合放大,它都能輕松識(shí)別,而且用起來特別方便。小伙伴們可以快速上手,給自己的項(xiàng)目加上各種酷炫的手勢(shì)功能。

祝好!

引用鏈接

[1] Github Star: 24k: https://github.com/hammerjs/hammer.js
[2] 官網(wǎng): https://hammerjs.github.io


該文章在 2024/10/12 10:07:43 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品成人观看视频国产奇米 | 国产区精品福利 | 国产精品视频一区二区三区四 | 国产91麻豆免费观看 | 99久久精品久久久 | 国产综合精品久久久久成人影 | 国产三级精品三级在线观 | 国产精品va在线观看丝瓜影院 | 精品日本一区 | 国产一区二区在线观看年轻 | a级毛片免费观看大全 | h无码精品 | 精品日韩妇女视频在线观看 | 国产美女脱的黄的全 | 国产日韩精品一区二区三区在线 | 国产高潮美女出白浆在 | 国产精品人妻一码二码尿失禁 | aⅴ无码一线天在 | 91精品人妻一区二区蜜桃 | 精品三级片在线 | 囯产精品一区二区三区乱码 | 爆乳无码一区二区在线观看ai | 国产高清无套内谢免费 | 国产精品成人品 | 国产做a视频免费观 | 国产精品露脸视频观看 | 国产熟睡乱子伦午夜视频麻豆 | 国产成人av在线影院无毒 | 成人日韩高清 | 99精品免费视频 | 国产三级aⅴ在线观看 | 成人一区二区在线观看视频 | 91福利在线观 | 69麻豆天美精东蜜桃传媒潘甜甜 | 国产免费无码不卡网站 | 国产精品无码高清在线观看 | 国产毛片一区二区三区视频 | 国产午夜性爱无码视频 | 国产美女冒白浆免 | 国产一区二区三区成人久久片 | 白丝乳交内射 |