Foros del Web » Programando para Internet » Javascript »

Problema compatibilidad en algunos móviles

Estas en el tema de Problema compatibilidad en algunos móviles en el foro de Javascript en Foros del Web. Hola. Tengo este script que me funciona para eliminar un div si se da una palabra en una celda de tabla. Así, si en la ...
  #1 (permalink)  
Antiguo 25/01/2018, 15:13
 
Fecha de Ingreso: noviembre-2005
Mensajes: 844
Antigüedad: 12 años, 11 meses
Puntos: 8
Problema compatibilidad en algunos móviles

Hola.

Tengo este script que me funciona para eliminar un div si se da una palabra en una celda de tabla.

Así, si en la tabla aparece "registrado" en algún td, debería eliminarse el div identificado como "botón".

Así:

Código:
<script> 	
var allTableCells = document.getElementsByTagName("td");
for(var i = 0, max = allTableCells.length; i < max; i++) {
var node = allTableCells[i];
var currentText = node.childNodes[0].nodeValue; 
if (currentText === "registrado")
document.getElementById("boton").remove();
}
</script>
Funciona en casi todos los navegadores, menos en algunos de Iphone, Nokia y otros.

¿Me podéis decir si este script incorpora algo que esté obsoleto o inadecuado? Me estoy rompiendo la cabeza y ya me he rendido.

Gracias.
  #2 (permalink)  
Antiguo 25/01/2018, 16:32
 
Fecha de Ingreso: noviembre-2015
Mensajes: 230
Antigüedad: 2 años, 11 meses
Puntos: 85
Respuesta: Problema compatibilidad en algunos móviles

En lugar de usar el método remove(), usa el método removeChild()
  #3 (permalink)  
Antiguo 29/01/2018, 18:07
Avatar de manuparquegiralda  
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 234
Antigüedad: 6 años, 3 meses
Puntos: 36
Respuesta: Problema compatibilidad en algunos móviles

Realmente el problema no es que el código esté obsoleto si no al revés, la función remove() de JavaScript es más nueva y no la soportan todos los navegadores. Prueba con removeChild como ha dicho mpozo.

Código Javascript:
Ver original
  1. var allTableCells = document.getElementsByTagName("td");
  2. for(var i = 0, max = allTableCells.length; i < max; i++) {
  3. var node = allTableCells[i];
  4. var currentText = node.childNodes[0].nodeValue;
  5. if (currentText === "registrado") {
  6. var boton = document.getElementById("boton");
  7. boton.parentElement.removeChild(botón);
  8. }
__________________
Diseño Web - Arisman Web

Etiquetas: compatibilidad, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:17.