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

169
Visualizações
¿Cómo volver a mostrar un elemento después de eliminarlo del DOM?

Estoy tratando de crear un script que oculte el chat y lo vuelva a mostrar después de presionar el botón H , pero no sé cómo necesito hacer que los elementos <div> del sitio web se muestren nuevamente después de eliminarlo. Aquí está mi código:

 // ==UserScript== // @name Cytos Additions // @namespace http://tampermonkey.net/ // @match https://cytos.io/ // @grant none // ==/UserScript== var isToggled = false; function doc_keyUp(e) { switch (e.keyCode) { case 72: // h if (isToggled) { } else { document.getElementsByClassName('_1FlWeEtrJKCnvzX-Y50CLP')[0].remove() } var isToggled = true; break; default: break; } } document.addEventListener('keyup', doc_keyUp, false);

No sé qué poner debajo de la if(isToggled) para que el chat vuelva a aparecer.

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

0

Lo opuesto a la remoción es la inserción; Hay varias formas de insertar un elemento. Dado que su elemento está en el índice 0 , lo que necesita aquí es anteponerlo a su elemento principal original.

Si simplemente elimina un elemento sin conservar su referencia, se recolectará como basura y ya no podrá usarlo. Entonces almacene una referencia al elemento; también, almacene uno en su padre, ya que ese es el objetivo al que debe anteponer el elemento.

 const chatElement = document.getElementsByClassName('_1FlWeEtrJKCnvzX-Y50CLP')[0], chatParent = chatElement.parentElement; let isToggled = false; function doc_keyUp(e) { switch (e.code) { case KeyH: if (isToggled) { chatParent.prepend(chatElement); } else { chatElement.remove(); } isToggled = !isToggled; break; default: break; } } document.addEventListener("keyup", doc_keyUp, false);

Alternar la variable isToggled se puede hacer con isToggled = !isToggled; , pero no vuelva a declarar la variable dentro de la función, o de lo contrario no tendrá relación con su variable externa isToggled .

Tenga en cuenta que keyCode está en desuso. Deberías usar code en su lugar.

Hay dos preocupaciones más:

  1. Si Cytos depende del chat existente, eliminar el elemento puede hacer que la aplicación se rompa. Asimismo, la extracción y reinserción de elementos puede provocar la activación de imprevistos. Considere usar case KeyH: chatElement.toggleAttribute("hidden"); break; en cambio. Consulte la documentación sobre toggleAttribute y sobre la propiedad hidden .
  2. El nombre de clase _1FlWeEtrJKCnvzX-Y50CLP no parece un nombre de clase estable, sino más bien un nombre aleatorio minimizado. Es muy probable que cambie y que su secuencia de comandos de usuario se rompa. Familiarícese con la API DOM, en particular con document.querySelector , y considere encontrar un selector más estable.
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