2010-12-13 17 views
6

Necesito simular un clic en un enlace usando JavaScript. ¿Alguien podría decirme cómo se puede lograr? Debería funcionar en Firefox e IE.Simular un clic en un enlace con JavaScript

Gracias de antemano.

+1

en jQuery sería '$ ('# enlace') del disparador ('clic');. – mpen

+3

' No se puede usar jQuery. – cycero

Respuesta

1

esto debe hacer el truco

document.getElementById('yourLink').click(); 
+1

Eso no funciona en FireFox. – cycero

+0

Creo que ff no entiende el evento click en los enlaces. ¿Podría envolverlo en un lapso y luego simular el clic o intentar a continuación: window.location.href = document.getElementById ('yourLink'). Href; –

+1

@Jinesh, a veces, necesitamos más que un redireccionamiento al hacer clic en un enlace :) – dheerosaur

0
document.getElementById('mylink').click() 
+0

Eso no funciona en FireFox. – cycero

+0

No hay ningún método de 'clic' para un objeto de enlace por lo que puedo recordar. – Anurag

+0

este método es solo para IE –

3

Como han mencionado otros, puede utilizar click método para IE. Para Firefox, eche un vistazo a element.dispatchEvent. Ver el ejemplo en la documentación.

+0

Para aquellos que son demasiado perezosos para cavar para el ejemplo ;-) https://developer.mozilla.org/en-US/docs/Web/Guide/Eventos/Creating_and_triggering_events # Triggering_built-in_events – Ash

+0

Además, esto puede ser útil para ayudar a identificar cuándo usar este código http://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and -opera-browser – Ash

4
var el = document.getElementById('link'); 

// Firefox 
if (document.createEvent) { 
    var event = document.createEvent("MouseEvents"); 
    event.initEvent("click", true, true); 
    el.dispatchEvent(event); 
} 
// IE 
else if (el.click) { 
    el.click(); 
} 

example

+0

Eso no funciona ... – cycero

+0

en firefox o IE, o en ambos? – Anurag

+0

No funciona en ambos :) – cycero

Cuestiones relacionadas