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

193
Visualizações
Llame a una función javascript desde un elemento HTML

Tengo un botón en una página web que se carga después de un período de tiempo determinado, funciona bien, pero a mi cliente le gustaría una manera fácil de agregar un botón que llame a esta función para que pueda agregarle valores dinámicos.

En este caso, el botón debería eliminar una clase después de 5 segundos de carga de la página/elemento:

Problema, no se está llamando a la función, verifiqué que la referencia al archivo javascript es correcta, sospecho que el problema es la forma en que estoy llamando a la función, aquí está mi código:

 <a href="somewhere.com" id="myButton" window.onload='showButton("myButton", "5000")'; class="invisible">Now you can see me!</a> function showButton(id, time) { setTimeout(function() { showButtonPrep(id, time); }, time); console.log("I have fired!"); } function showButtonPrep(id, time) { var button = document.getElementById(id); button.classList.remove('invisible'); }

La consola no registra la cadena, por lo que puedo ver que no se está cargando. He probado variaciones de la carga, es decir.

 window.load this.load

El archivo javascript que contiene la función está en el pie de página, si coloco una alerta en la parte superior del archivo javascript que se activa.

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

0

window.onload no es un atributo HTML válido para <a> . Esto parece una confusión entre HTML y JavaScript.

Deberías poner eso dentro de un script:

 window.onload = () => showButton("myButton", 5000); function showButton(id, time) { setTimeout(function() { showButtonPrep(id, time); }, time); console.log("I have fired! Now wait 5 seconds..."); } function showButtonPrep(id, time) { var button = document.getElementById(id); button.classList.remove('invisible'); }
 .invisible { display: none }
 <a href="somewhere.com" id="myButton" class="invisible">Now you can see me!</a>

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