Foros del Web » Programando para Internet » Javascript »

Obtener el ancho de una tabla

Estas en el tema de Obtener el ancho de una tabla en el foro de Javascript en Foros del Web. Hola amigos Quisiera saber como obtengo en ancho de una tabla mediante código javascript y que esta propiedad sea válida en todos los navegadores tengo ...
  #1 (permalink)  
Antiguo 16/03/2006, 12:03
Avatar de elunicode  
Fecha de Ingreso: noviembre-2005
Mensajes: 66
Antigüedad: 18 años, 5 meses
Puntos: 2
Mensaje Obtener el ancho de una tabla

Hola amigos

Quisiera saber como obtengo en ancho de una tabla mediante código javascript y que esta propiedad sea válida en todos los navegadores
tengo la idea usando la propiedad width, pero no se como hacerlo
les agredezco de antemano su ayuda...

a modo de ejemplo estoy tratando de hacer lo siguiente (pero no se si estoy mal)

<script>
var ancho_tabla = window.document.QuePongoAqui.width;
</script>

Gracias
  #2 (permalink)  
Antiguo 16/03/2006, 12:12
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola elunicode

Usa esto:

ancho = document.getElementById('idDeTabla').offsetWidth;

Saludos,
  #3 (permalink)  
Antiguo 16/03/2006, 12:29
Avatar de elunicode  
Fecha de Ingreso: noviembre-2005
Mensajes: 66
Antigüedad: 18 años, 5 meses
Puntos: 2
Gracias Javier por tu ayuda, ya funcionó el código
y dispensa por volverte a molestar

¿Cómo puedo obtener en ancho del TD y el alto de TR de la misma tabla?
¿Es necesario asignar también un ID por cada elemento de la tabla o con el ID de la tabla puede trabajar?

Me podrías ejemplificar

Gracias Nuevamente
  #4 (permalink)  
Antiguo 16/03/2006, 13:00
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola elunicode:

Con el permiso de JavierB (¡Hola !)...

Teniendo el id de la tabla (incluso sin él) se puede obtener su array de filas y celdas:

laTabla.rows o laTabla.getElementsByTagName("tr")...

y para las celdas:

laTabla.cells o laTabla.getElementsByTagName("td")...

Pero sin el id se obtienen todos como un array por lo que hay que especificar el índice entre corchetes:
laTabla.rows[0] o laTabla.getElementsByTagName("tr")[0]

La anchura se obtiene con offsetWidth y la altura con offsetHeight...

No sé si el maestro JavierB quiere ampliar lo expuesto.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 16/03/2006, 13:16
Avatar de elunicode  
Fecha de Ingreso: noviembre-2005
Mensajes: 66
Antigüedad: 18 años, 5 meses
Puntos: 2
Gracias por su ayuda, Mi código ya está funcionando
  #6 (permalink)  
Antiguo 16/03/2006, 13:30
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Cita:
Iniciado por caricatos
Con el permiso de JavierB (¡Hola !)...
No necesitar pedirlo
Cita:
Iniciado por caricatos
No sé si el maestro JavierB quiere ampliar lo expuesto.
No se el maestro que pensará Al aprendiz JavierB le parece muy completo tu mensaje.

Saludos,
  #7 (permalink)  
Antiguo 16/03/2006, 13:46
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
¡Je, je!

Con tanto formalismo se me había olvidado que en algunos navegadores el array de celdas (laTabla.cells) deben depender de la fila madre...
Creo que según la ocasión puede convenir usar la otra sintaxis... (getElementsByTagName)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 06:34.