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

112
Visualizações
Activación de Javascript después de dos intentos

Ok, tal vez el título está redactado un poco mal...

Tengo un javascript que se supone que abre mi barra lateral una vez que se hace clic en el botón, pero se necesitan dos clics para abrir la barra lateral y otros dos clics para cerrarla.

Entiendo por qué sucede esto a través de mi Javascript, pero no estoy seguro del remedio (¿No estoy seguro si en realidad es un problema de Blazor?)

JavaScript

 function LoadContent() { document.addEventListener("DOMContentLoaded", document.onclick = function(event) { const showNavbar = (toggleId, navId, pId, headerId) => { const toggle = document.getElementById(toggleId), nav = document.getElementById(navId), bodypd = document.getElementById(pId), headerpd = document.getElementById(headerId); mainbodypd = document.getElementById("mainbody"); if (toggle && nav && bodypd && headerpd && mainbodypd) { toggle.addEventListener("click", () => { nav.classList.toggle("show"); toggle.classList.toggle("bx-x"); bodypd.classList.toggle("body-pd"); headerpd.classList.toggle("body-pd"); mainbodypd.classList.toggle("height-100short"); }); } }; showNavbar("header-toggle", "nav-bar", "body-pd", "header"); const linkColor = document.querySelectorAll(".nav_link"); function colorLink() { if (linkColor) { linkColor.forEach(l => l.classList.remove("active")); this.classList.add("active"); } } linkColor.forEach(l => l.addEventListener("click", colorLink)); }); }

¿Alguien puede explicar cómo puedo evitar que esto suceda? (Lo siento, soy bastante nuevo en JS)

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

0

Entonces, ¿por qué estás haciendo:

 document.onclick = function(event) {

Esto hace que la función active cada clic de página EN CUALQUIER LUGAR de la página (lo que significa que sigue agregando detectores de eventos cada vez que hace clic).

Probablemente deberías eliminar esa parte, o si la necesitas para algo, quita la sección de la barra mostrada y guárdala en DOMContentLoaded.

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