2012-09-11 28 views
5

¿Hay alguna manera de reemplazar todo evento click por evento vclick en jQuery mobile?jQuery Mobile: reemplace el evento click por el evento vclick

La única solución que he encontrado hasta ahora es el registro de un evento de la siguiente manera VHAGA CLIC

$('a').bind("vclick", function (ev) { 
    // Do Some stuff 
    ev.preventDefault(); 
}); 

El problema es que esta solución no impide evento jQuery móvil, haga clic para disparar de modo clics se disparan dos veces

+0

¿Desea sobrescribir el evento de clic y almacenar tanto el clic como el v clic en el archivo? –

+0

Me gustaría que un clic en el enlace active el evento vclick en lugar del evento de clic normal para evitar el retraso de 300 ms que observamos en los dispositivos táctiles. – Laurent

Respuesta

4

Por alguna razón, me dio la siguiente para el trabajo:

$('a').bind('vclick click',function(e){ 
    e.preventDefault(); 
    //do some stuff// 
}) 

Sin la e.preventDefault() se activa el evento dos veces. Con él, solo dispara una vez (pero dispara)

Esto es similar a lo que usted indicó, pero puede abarcar más.

+0

¿No sería lo mismo que $ ('a'). Bind ('clic', función (e) {? – Seanonymous

+0

No lo sé. No recuerdo cómo llegué allí. Tenía sentido para mí en ese momento, pero ahora no puedo recrear mi pensamiento. Diría que tiene usted razón, pero creo que hay alguna razón por la cual la 'solución' funciona según lo previsto. – user1167442

+0

Me salvó de mucho trabajo extra. ¡Gracias! – KJS

2
$("#elementId").bind('vclick',function(event){ 
event.preventDefault(); 
//your code.. 
}); 

esto está funcionando correctamente.

Cuestiones relacionadas