Tengo una tabla con celdas de texto de longitud variable. Quiero encontrar la altura de la celda más alta y luego hacer que todas las celdas tengan esa altura. ¿Cómo puedo hacer esto?¿Cómo puedo encontrar la altura más grande de la celda de la tabla con jQuery?
Respuesta
De esta manera:
var max = 0;
$('table td').each(function() {
max = Math.max($(this).height(), max);
}).height(max);
En la llanura Inglés, bucle a través de todas las células y encontrar el valor máximo, y luego aplicar ese valor a todas las células.
Hay several plugins que pueden hacer esto por usted. Sin embargo, el código se vería así:
var tallest = 0;
$('table td').each(function() {
if (tallest < $(this).height()) {
tallest = $(this).height();
}
});
$('table td').css({'height': tallest});
Puede usar jQuery con el siguiente código
var maxHeight = 0;
$('#yourTableID td').each(function(index, value)
{
if ($(value).height() > maxHeight)
maxHeight = $(value.height());
}).each(function(index, value) {
$(value).height() = maxHeight;
});
creo que sirve
Espera, ¿qué está pasando aquí: '$ (valor) .height() = maxHeight'. El colocador requiere 'maxHeight' como un argumento de función, mientras que ningún argumento devolverá la altura. ¿Y por qué no usarías 'this' después de todo? – Harmen
sólo para ser diferente:
var heights = $('td').map(function() {
return $(this).height();
}).get();
var maxHeight = Math.max.apply(Math, heights);
$('td').css('height', maxHeight);
¿Realmente necesita guardar la altura de todas las celdas de la tabla en una matriz? Esto significa que en realidad tiene que escanear sobre ellos tres veces. La primera vez para obtener todas las alturas, una segunda iteración para obtener la altura máxima y la tercera vez para establecer la altura máxima. – Harmen
La recolección de basura se encarga de la matriz al final. ¿No crees que comparar cada altura requiere algo de potencia de CPU? Math.max.apply() es extremadamente eficiente. Lamento haber publicado algo diferente de la norma. Si lo comparas, gana. Prefiero el ejemplo de Tatu personalmente, la gente entiende el encadenamiento. –
Puedes estar ahí, ya no puedo deshacer mi voto negativo, la próxima vez solo añadiré un comentario antes de presionar el botón de votar hacia abajo – Harmen
contribuir el ejemplo de @tatu ulmanen
Esto es obvio, pero si sólo quiere estirar las filas con celdas más altas envolver un bucle tr :)
$('table tr').each(function(){
var max = 0;
$(this).find('td').each(function(){
max = Math.max($(this).height(), max);
}).height(max);
});
- 1. ¿Cómo encontrar la celda de la tabla anterior usando jQuery?
- 2. IE8 altura de la celda de la tabla de estiramiento
- 3. Cómo obtener la segunda entrada más grande o la tercera más grande de una tabla
- 4. ¿Cómo puedo encontrar el segundo salario más grande de la tabla de empleados?
- 5. ¿Cómo puedo encontrar la "ubicación visual" de cada celda de tabla usando jQuery?
- 6. Usando JQuery para encontrar la siguiente fila de la tabla
- 7. Desplazamiento de la celda en una altura del 100% TABLA
- 8. jQuery: Obtiene la siguiente celda de la tabla verticalmente
- 9. jQuery - encontrar la fila de la tabla que contiene la celda de la tabla que contiene texto específico
- 10. php_excel07- Cómo hacer crecer la altura de la celda según los datos de la celda (xls)
- 11. En JQuery, ¿cómo puedo obtener la celda de la tabla adyacente?
- 12. jQuery encontrar anterior fila de la tabla que tiene una celda con una clase específica
- 13. ¿Cómo seleccionar y cambiar el valor de la celda de la tabla con jQuery?
- 14. DIV tramo a la altura de 100% en una celda de la tabla
- 15. Encontrar el palíndromo más grande en la implementación de cadenas
- 16. jQuery haga clic en el evento celda de la tabla
- 17. Configuración de altura para la tabla en iTextSharp
- 18. Cómo controlar la altura tr de la tabla en CSS
- 19. Altura de la celda UITableView dinámica basada en el contenido
- 20. Pestañas de la IU de Jquery con la misma altura
- 21. Dividir la tabla grande en varias tablas más pequeñas
- 22. Cómo encontrar el número de fila y col de una celda en la tabla
- 23. Cómo alinear la imagen al centro de la celda de la tabla (Tabla SWT)
- 24. Texto del centro en la celda de la tabla
- 25. Conseguir div para ocupar la altura de celda completa
- 26. jQuery obtener el número más grande de la lista
- 27. Encontrar la subsecuencia con la suma más grande de elementos en una matriz
- 28. establecer la altura de la fila de la tabla
- 29. ¿Por qué no funciona el porcentaje de altura con la pantalla: tabla-celda?
- 30. Cómo tener la altura de la tabla html = altura de div principal cuando la altura de div no está establecida
+1 porque es corto, pero se puede optimizarlo. Puede eliminar 'max === false ||' por ejemplo. Y creo que deberías mover '$ (this) .height()' a una variable, lo que te ahorra un par de llamadas a funciones dobles – Harmen
Espera, ya lo arreglaste. Esa es una solución realmente buena. Creo que – Harmen
@Harmen, gracias, ahora usa 'Math.max()' que lo simplifica bastante. –