Negli script precedenti abbiamo illustrato come sia possibile, anche dal browser, implementare le gesture come ad esempio il tap, tap-hold e swipe.
https://www.html5italia.com/script/26/Gestire-Eventi-Tipo-Touch-HTML5.aspx
https://www.html5italia.com/script/27/Eventi-Tocco-Personalizzati-HTML5.aspx
I più "pigri" potrebbero trovare migliorabile e poco intuitiva l'operatività illustrata in questi script, accogliendo con favore librerie che, come HammerJS, possono facilitare il lavoro e ridurre il codice necessario per implementare le gesture.
HammerJS è una libreria Javascript, disponibile qui:http://eightmedia.github.com/hammer.js/, che vanta le seguenti caratteristiche:
- gestione semplificata degli eventi touch e soprattutto, multi-touch!
- facilmente integrabile
- peso ridotto a 2kb
- disponibile come plugin di jQuery
Ecco come nella pratica, HammerJS consente di implementare le gesture Tap, Double Tap, Swipe, Hold, Transform/Pinch, Drag in un sito web (o mobile web):
<!doctype html> <html> <head> </head> <body> <div id="touchArea"></div> <div id="logArea"></div> <script src="../query.min.js"></script> <script src="../hammer.js"></script> <script src="../jquery.hammer.js"></script> </body> </html>
var log = $("#logArea"); function writeLog(str) { log.prepend(str +"<br>"); } $("#touchArea").hammer({ prevent_default: false, drag_vertical: false }) .bind("hold tap doubletap transformstart transform transformend dragstart drag dragend release swipe", function(event) { writeLog(event.type); //disponibili anche: //event.direction (right, left...) //event.distance (per valutare l'intervallo in pixel interessato dalla gesture) });
E' evidente che, utilizzando questa libreria, la sintassi risulta semplificata ed allo stesso tempo la varietà delle gesture supportate copre la maggioranza degli scenari touch-based.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire il colore CSS con HWB
Gestione dell'annidamento delle regole dei layer in CSS
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Utilizzare i variable font nel CSS
Usare le navigation property in QuickGrid di Blazor
Creare una libreria CSS universale: Clip-path
Recuperare App Service cancellati su Azure
Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API
Escludere alcuni file da GitHub Secret Scanning
Simulare Azure Cosmos DB in locale con Docker
Scrivere selettori CSS più semplici ed efficienti con :is()
Gestire i dati con Azure Cosmos DB Data Explorer