Redireccionar link a otra URL con Javascript

  • Autor Autor martinfcastro
  • Fecha de inicio Fecha de inicio
M

martinfcastro

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Buenas,
Me encuentro intentando resolver el siguiente ejercicio y no lo estoy logrando:

"Intercambiar las URLs de los links de la barra de navegación. El que dice Google! tiene que redirigir a educacionit.com y viceversa. "

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

Dejo a continuación mis líneas de código:

HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Clase 1</title>
<link rel="stylesheet" href="style.css">
</head>
<body>

<nav id="nav"><h1> <a id="aEducacion" href="http://www.google.com"> GOOGLE! </a></h1> <h1> <a id="aGoogle" href="https://www.educacionit.com"> Educación IT </a></h1></nav>


<script src="index.js"></script>
</body>
</html>


JS

let aGoogleJs = document.getElementById("aGoogle")
let aEducacionJs = document.getElementById("aEducacion")
aGoogleJs.addEventListener('click', e=>{
e.preventDefault
window.location="http://www.google.com"
})
aEducacionJs.addEventListener("click", e=>{
e.preventDefault
window.location="https://www.educacionit.com"
})

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

Al hacer click en los enlaces, los mismos siguen dirigiéndose a las URL definidas en HTML, como si no funcionara el preventDefault..
Como prueba, si dejo los links en HTML vacìos, los eventos en JS funcionan perfectamente con el redireccionamiento de window.location.

Màs allà de que debe haber otras formas de encararlo, me gustarìa entender si hay algo que estoy ejecutando mal con este método puntual que planteo.

Muchas gracias a todos
 
Puedes hacerlo con el evento onclick bro. que te puede funcionar de maravilla.
 
Buenas,
Me encuentro intentando resolver el siguiente ejercicio y no lo estoy logrando:

"Intercambiar las URLs de los links de la barra de navegación. El que dice Google! tiene que redirigir a educacionit.com y viceversa. "

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

Dejo a continuación mis líneas de código:

HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Clase 1</title>
<link rel="stylesheet" href="style.css">
</head>
<body>

<nav id="nav"><h1> <a id="aEducacion" href="http://www.google.com"> GOOGLE! </a></h1> <h1> <a id="aGoogle" href="https://www.educacionit.com"> Educación IT </a></h1></nav>


<script src="index.js"></script>
</body>
</html>


JS

let aGoogleJs = document.getElementById("aGoogle")
let aEducacionJs = document.getElementById("aEducacion")
aGoogleJs.addEventListener('click', e=>{
e.preventDefault
window.location="http://www.google.com"
})
aEducacionJs.addEventListener("click", e=>{
e.preventDefault
window.location="https://www.educacionit.com"
})

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

Al hacer click en los enlaces, los mismos siguen dirigiéndose a las URL definidas en HTML, como si no funcionara el preventDefault..
Como prueba, si dejo los links en HTML vacìos, los eventos en JS funcionan perfectamente con el redireccionamiento de window.location.

Màs allà de que debe haber otras formas de encararlo, me gustarìa entender si hay algo que estoy ejecutando mal con este método puntual que planteo.

Muchas gracias a todos

agregando un onclick="return false;" en tus enlaces lo solucionas...
HTML:
<a id="aEducacion" onclick="return false;" href="https://www.google.com">
 

Por si a alguien más le pasa.
 
Atrás
Arriba