Manipulación del DOM
Publicado por John (6 intervenciones) el 07/02/2021 13:18:10
Buenos días, tengo un pequeño problema y es que no le encuentro el fallo a una función para bajar un elemento del dom hacia abajo, el caso es que hacía arriba si lo tengo.

Este es el código para subir un elemento que si funciona utilizando el previousElementSibling:
Este es el de bajar utilizando el nextElementSibling pero no me funciona:
A ver si podéis ayudarme por que no encuentro el error por mas que lo miro.
PD: Vale veo que en esta parte: oNodoPadre.insertBefore(oCapaABajar,oCapaABajar.nextElementSibling);
lo que hacer es insertar como en la funciona de arriba, pero no existe la alternativa insertAfter(), aunque no se si ese es el fallo o hay alguno mas.

Este es el código para subir un elemento que si funciona utilizando el previousElementSibling:
1
2
3
4
5
6
7
8
9
10
11
12
function subirCapa(oEvento){
let oE = oEvento ||window.event;
let oCapaASubir = oE.target.parentElement; // Fila completa
if(oCapaASubir.previousElementSibling != null) {
let oNodoPadre = oCapaASubir.parentElement; // #orden
oNodoPadre.insertBefore(oCapaASubir,oCapaASubir.previousElementSibling);
}
}
Este es el de bajar utilizando el nextElementSibling pero no me funciona:
1
2
3
4
5
6
7
8
9
10
11
12
function bajarCapa(oEvento){
let oE = oEvento ||window.event;
let oCapaABajar = oE.target.parentElement; // Fila completa
if(oCapaABajar.nextElementSibling != null) {
let oNodoPadre = oCapaABajar.parentElement; // #orden
oNodoPadre.insertBefore(oCapaABajar,oCapaABajar.nextElementSibling);
}
}
A ver si podéis ayudarme por que no encuentro el error por mas que lo miro.
PD: Vale veo que en esta parte: oNodoPadre.insertBefore(oCapaABajar,oCapaABajar.nextElementSibling);
lo que hacer es insertar como en la funciona de arriba, pero no existe la alternativa insertAfter(), aunque no se si ese es el fallo o hay alguno mas.
Valora esta pregunta


0