2013-06-12 13 views
17

Ok, sono abbastanza nuovo per lo sviluppo web per piattaforme mobile/tablet. Sono piuttosto fiducioso però nello sviluppo per un ambiente browser.jquery click evento per tablet e telefoni touch screen

Il mio problema è che Non possiedo alcun tablet (sono povero quindi devo volare cieco) quindi è difficile per me testare. Sono anche piuttosto preoccupato per il fatto che gli eventi di clic non funzionino correttamente.

Come posso garantire che gli eventi di jquery di clic e mouse funzionano su compresse/smartphone correttamente?

Esiste un consenso sulle migliori pratiche per eventi di clic e tablet/smartphone?

Nota: non sto sviluppando un sito solo per dispositivi mobili: il sito trasforma la forma per dispositivi mobili.

+4

Si potrebbe usare questo: '$ (elemento) .on ('touchstart click', function() {...});'. – Joe

+0

Emulatori di aiuto? http://www.webdesignerdepot.com/2012/11/6-free-mobile-device-emulators-for-testing-your-site/ – WeaklyTyped

+0

@Joe ho lo stesso problema onclick non funziona su tablet, se uso .on e stampa qualcosa allora funziona.alert ho provato a sostituire con cosole.log ma onclick non funzionava con quello – anam

risposta

20

I browser mobili risponderanno comunque agli eventi click, sebbene introdurranno un ritardo (in genere circa 300 ms). Se desideri un'esperienza più reattiva, puoi provare a rilevare se sei su una piattaforma mobile e utilizzare gli eventi touchstart o touchend. Trovo che touchend di solito sia un'esperienza migliore, soprattutto perché la mano dell'utente è ancora nel modo in cui gli incendi dello touchstart.

Qualcosa di simile a questo:

$(element).on(isMobile ? 'touchend' : 'click', function(e) {...});

oppure è possibile utilizzare hammer.js, che lavorerà sia per desktop e mobile.

Come per il test, è possibile leggere le risposte a questa domanda StackOverflow: Simulating touch events on a PC browser.

Problemi correlati