Quiero simular un clic en cualquier enlace en una página usando JavaScript. Si ese enlace tiene alguna función ligada a su evento 'onclick' (por cualquier otro JS del que yo no tenga ningún control), entonces debe llamarse a esa función, de lo contrario el enlace debería comportarse de la manera normal y abrir una página nueva.Simulando un clic en jQuery/JavaScript en un enlace
No estoy seguro de que basta con comprobar el valor del controlador 'onclick'. Quiero construir esto para que funcione en cualquier elemento de enlace.
No tengo control sobre qué función puede vincularse al evento onclick del enlace utilizando la biblioteca JS (no necesariamente jQuery) o simplemente usando JavaScript.
EDITAR: Con la ayuda de las respuestas a continuación, parece que es posible verificar los controladores de eventos adjuntos utilizando jQuery o utilizando el atributo onclick
. ¿Cómo controlo los controladores de eventos adjuntos usando addEventListener
/cualquier otra biblioteca JS para que sea infalible?
"¿Cómo puedo comprobar si hay controladores de eventos adjunto utilizando/cualquier otra biblioteca JS addEventListener para que sea a prueba de tontos"? Ahora * ese * es un duplicado;) Ver http://stackoverflow.com/questions/446892/how-to-find-event-listeners-on-a-dom-node/447106#447106 –
Aún no hay resolución, sin embargo:) ¿Tal vez al revés y trates de simular un clic creando un evento MouseEvent? http://stackoverflow.com/questions/1421584/how-can-i-simulate-a-click-to-an-anchor-tag – ankit
@Ankit: sí exactamente, esa segunda respuesta despedirá a los controladores independientemente de cómo estén adjuntos . Aún dices "de lo contrario, el enlace debería comportarse de la manera normal y abrir una página nueva". Vas a tener problemas con eso. Lo siento, no tengo tiempo para ser más útil aquí. –