Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

103
Views
Javascript agregando un nuevo detector de eventos en el objeto local

Tengo un script a continuación, donde creo dinámicamente un nodo de elemento de tipo 'li'. Este addMovieHandler() se llama cada vez que el usuario hace clic en un botón.

Además, el elemento de la lista recién agregado debe eliminarse al hacer 'clic'.

Entonces, lo que experimenté es que agregué un Event Listener en el objeto local newLi y también lo pasé a la función deleteMovieHandler() .

Y funciona. Agregué varios elementos de la lista y cuando hice clic en cualquiera, desapareció de la pantalla.

 const movieList = document.getElementById('movie-list'); const deleteMovieHandler = (newLi) => { newLi.style.display = 'none'; } const addMovieHandler = (image) => { const newLi = document.createElement('li'); newLi.className = 'movie-element'; newLi.innerHTML = ` <div class = "movie-element__image"> <img src="${image}"></img> </div> `; newLi.addEventListener('click', deleteMovieHandler.bind(this, newLi)); movieList.appendChild(newLi); }

Entiendo que esta es una mala práctica simplemente ocultar el elemento, lo que se convierte en un desperdicio de recursos.

Pero el centro de interés es que había un detector de eventos separado en cada elemento de la lista, aunque ese objeto local debería haberse perdido después de la finalización de la función.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!