JavaScript - Class Name en vez de ID

 
Vista:

Class Name en vez de ID

Publicado por Pedro (6 intervenciones) el 21/12/2019 15:51:56
Hola gente! Tengo el siguiente problema: Quiero que este código afecte a varios y diferentes DIVS.

1
2
3
4
var fixed = document.getElementById('fixed');
fixed.addEventListener('touchmove', function(e) {
    e.preventDefault();
}, false);


Ya he probado cambiando getElementById por getElementsByClassName y añadiendo las clases a los DIVS que quiero que afecte el código pero parece que eso no es suficiente. ¿Qué estoy haciendo mal?

Un saludo y gracias de antemano.
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 ScriptShow
Val: 2.019
Plata
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Class Name en vez de ID

Publicado por ScriptShow (692 intervenciones) el 21/12/2019 18:41:07
Saludos,

un ejemplo 100% compatible, adaptable, etc...

1
2
3
4
5
6
7
8
9
10
11
12
13
<div class="test">Div - 01</div>
<div class="test">Div - 02</div>
<div class="test">Div - 03</div>
<div class="test">Div - 04</div>
 
<script>
// var test = document.querySelectorAll(".test"); // (muy compatible).
var test = document.getElementsByClassName("test");
var i;
for (i = 0; i < test.length; i++) {
test[i].onclick = function() {this.style.color = "blue"}
}
</script>

Espero sea útil.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Class Name en vez de ID

Publicado por Pedro (6 intervenciones) el 21/12/2019 19:17:28
No consigo aplicar eso a mi código. No sé que hago mal pero no funciona. :/

1
2
3
4
5
6
7
var  fixed = document.getElementsByClassName('fixed');
var i;
for (i = 0; i < fixed.length; i++) {
fixed.addEventListener('touchmove', function(e) {
    e[i].preventDefault();
}, false);
}
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
Imágen de perfil de ScriptShow
Val: 2.019
Plata
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Class Name en vez de ID

Publicado por ScriptShow (692 intervenciones) el 21/12/2019 21:25:40
Veamos opciones "razonables"...

1
2
3
4
5
var  fixed = document.getElementsByClassName('fixed');
var i;
for (i = 0; i < fixed.length; i++) {
fixed[i].addEventListener('touchmove', function(e) {e.preventDefault();}, false);
}

1
2
3
4
5
var  fixed = document.getElementsByClassName('fixed');
var i;
for (i = 0; i < fixed.length; i++) {
fixed[i].addEventListener('touchmove', function() {this.preventDefault();}, false);
}

La línea de código 4, es toda seguida, tal cual.

Otras pruebas parecidas con el índice en:

1
fixed[i]

1
e[i].preventDefault();

Espero sea útil.
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

Class Name en vez de ID

Publicado por Kevin Ramos (1 intervención) el 06/01/2020 23:21:35
Lo que tienes que hacer es sencillo, a los div que quieres seleccionar agrégale un class="ConElMismoValorATodos" y luego has referencia a ellos con getElementsByClassName("ConElMismoValorATodos");
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