JavaScript - load: solo registra un evento

 
Vista:
Imágen de perfil de Emmanuel
Val: 4
Ha disminuido su posición en 14 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

load: solo registra un evento

Publicado por Emmanuel (2 intervenciones) el 01/08/2019 03:20:35
Hola, estoy probando una sección de una página y tengo problemas con addEventListener del load. Tengo varios eventos y solo me registra uno, si lo cambio de posición (el evento de arriba por el de abajo) me registra el que está primero. Les dejo el codigo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
addEventListener('load',inicio,false);
function inicio()
{
    for(f=0;f<=document.getElementsByClassName('principales').length;f++)
    {
        document.getElementsByClassName('principales')[f].addEventListener('click',enlace,false);
        document.getElementById('desarrollo').addEventListener('click',borrar,false);
    }
    for(f=0;f<=document.getElementsByClassName('extra').length;f++)
    {
        document.getElementsByClassName('extra')[f].addEventListener('mouseover',activar,false);
        document.getElementsByClassName('extra')[f].addEventListener('mouseout',desactivar,false);
        document.getElementsByClassName('extra')[f].addEventListener('click',enlace,false);
    }
}
Pasando en limpio: si cambio de lugar el "for" de arriba por el de abajo, funciona el de arriba.
Estoy empezando a programar (solo HTML, CSS, JAVASCRIPT), sepan disculpar mi alcance en el tema.
Si alguien me puede ayudar, se los agradezco.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.506
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

load: solo registra un evento

Publicado por joel (895 intervenciones) el 01/08/2019 08:26:09
Hola Emmanuel, el problema que tienes que que tienes un error en los dos bucles for, por eso te hace solo el primero, ya que al encontrar un error se detiene el código.

Si miras la consola del navegador veras el error...

El for no tiene que ser <= sino que tiene que ser < unicamente... así:
1
for(f=0;f<document.getElementsByClassName('principales').length;f++)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Emmanuel
Val: 4
Ha disminuido su posición en 14 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

load: solo registra un evento

Publicado por Emmanuel (2 intervenciones) el 01/08/2019 21:42:15
Tenes razón... No me di cuenta. Joel sos un capo. Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar