Problema evento click() en algunos navegadores webkit

Buenas a todos,

hoy estaba intentado visualizar una web en mi móvil Android y he descubierto que algo no iba bien. Curiosamente no se disparaba un evento .click() de JQuery que funcionaba sin problemas en todos los demás navegadores salvo en Safari para Windows.

Tras buscar por stackoverflow he descubierto la solución en este post:

Como veis, para garantizar que dicho evento vaya bien hay que armarla un poco.. pero nada tremendamente complicado:

# First create an event
var click_ev = document.createEvent("MouseEvent");
# initialize the event
click_ev.initEvent("click", true /* bubble */, true /* cancelable */);
# trigger the evevnt
document.getElementById("someElement").dispatchEvent(click_ev);

Espero que os sirva de ayuda😉

Actualización: Después de seguir probando, si encapsulamos el elemento que llama al click() dentro del wrapper de JQuery, también funciona y es más simple:

$($(‘.elemento’)).click();

Acerca de

Ingeniero Informático. RoR Developer

Publicado en Informática, JavaScript

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: