Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

320
Visualizações
¿Cómo obtener href interno dentro de una etiqueta?

Todo el elemento es como a continuación:

 <h2 class="font120 mt0 mb10 mobfont110 lineheight20 moblineheight15"><a href="https://demosite.com">demo text</a></h2>

He ejecutado este siguiente comando:

 const y = document.getElementsByClassName("font120 mt0 mb10 mobfont110 lineheight20 moblineheight15")[0].innerHTML; console.log(y);

Y obtuve el siguiente resultado.

 <a href="https://demosite.com">demo text</a>

Ahora quiero obtener el enlace URL de href y luego hacer clic en él. ¿Cómo puedo hacerlo usando JavaScript? Además de eso, quiero agregar la declaración if else después de esto, que verificará si la URL de href cambia cada 5 minutos, si cambia, entonces debe hacer clic en el enlace de la URL de href; de lo contrario, solo debe actualizar la página.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Creo que esto se acerca a lo que quieres. Lo he probado localmente y funciona.

  1. Hay una serie de anclas en el interior de los contenedores. Cada ancla tiene un evento de clic adjunto.

  2. El valor href inicial se establece en el atributo href del primer ancla.

  3. Luego, el código busca nuevos clics en los anclajes. Si hay uno, se inicia un temporizador. Si el nuevo href es el mismo que el guardado, después de cinco segundos, la página se vuelve a cargar. Si no es lo mismo, se carga la nueva página.

  4. En cada nuevo clic, el temporizador se reinicia.

 // Pick up the anchors with `querySelectorAll` const anchors = document.querySelectorAll('.demo a'); // Assign a handler to them for when the click // event is triggered. (Note `handleClick` returns // a new function that is actually assigned to the // listener because I wanted to use prevent any unnecessary // global variables, and you can do that with closure anchors.forEach(anchor => { anchor.addEventListener('click', handleClick()); }); function handleClick() { // Initialise the current href, and // the timer let current = anchors[0].href; let timer; // Return the function the listener will // be using return function (e) { // Stop the anchor from doing anything e.preventDefault(); // Get the new href from the clicked element const { href } = e.target; // Clear any timers clearTimeout(timer); // And set a new timer. If the current // href doesn't match the one on the clicked // element assign the page to a new location, // otherwise reload the current page. // This time is set for five seconds for testing // but you change that to five minutes (60000 x 5) timer = setTimeout(() => { if (current !== href) { // location.assign(href); console.log(`Redirecting to ${href}`); } else { // location.reload(); console.log(`Refreshing ${current}`); } current = href; }, 5000); } }
 <div class="demo"> <a href="https://demosite1.com">demo text 1</a> </div> <div class="demo"> <a href="https://demosite2.com">demo text 2</a> </div> <div class="demo"> <a href="https://demosite3.com">demo text 3</a> </div>

Documentación adicional

  • addEventListener

  • Cierres

  • Asignación de desestructuración

  • querySelectorAll

  • setTimeout

about 4 years ago · Juan Pablo Isaza Relatório

0

Todo lo que necesita hacer es buscar el elemento a usando el selector CSS h2 a y luego obtener su atributo href :

 console.log(document.querySelector("h2 a").href)
 <h2 class="font120 mt0 mb10 mobfont110 lineheight20 moblineheight15"><a href="https://demosite.com">demo text</a></h2>

Para configurar una recarga de la página, puede configurar un

 setTimeout("location.reload()",5*60*1000)

Esto volverá a cargar la página actual después de cinco minutos y continuará haciéndolo, ya que la página recargada contendrá la misma función setTimeout (no activada).

Para verificar si el valor href ha cambiado de una a la siguiente versión recargada, deberá almacenar el valor en el almacenamiento localstorage y compararlo cada vez que se cargue la página con el valor href actual.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda