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
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Integrare SQL Server in un progetto .NET Aspire
Creare una libreria CSS universale - Rotazione degli elementi
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Supportare la crittografia di ASP.NET Core con Azure Container App
Ricevere notifiche sui test con Azure Load Testing
Utilizzare Container Queries nominali
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Fornire parametri ad un Web component HTML
Supportare la sessione affinity di Azure App Service con Application Gateway
Gestione dell'annidamento delle regole dei layer in CSS
I più letti di oggi
- .NET Conference Italia 2025 - Milano
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- The Agentic Day - Milano
- Gestione ciclo di vita in .NET Aspire
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Gestione CSS in Blazor con .NET 9
- Gestione file Javascript in Blazor con .NET 9
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!