Estoy usando un plugin jQuery desde aquí http://www.tablefixedheader.com/ para hacer una tabla elegante con un encabezado fijo, clasificación y otras características geniales. Ahora, también he visto jqGrid, que se ve ridículamente increíble, pero estamos haciendo algunas cosas funky con nuestra fuente de datos y no creo que esté listo para jugar bien con jqGrid.¿Cómo puedo alterar el plugin FixedTableHeader jQuery para tener una primera columna fija también?
De todos modos, mis jefes quieren que la primera columna de la tabla que creé sea reparada, para que puedan desplazarse por el eje x, pero aún así ver la primera columna. ¿Cómo puedo modificar este complemento para proporcionar esta funcionalidad?
Cualquier ayuda es muy apreciada
Gracias
EDIT:
He intentado añadir:
th:first-child
{
position : relative;
}
td:first-child
{
position : relative;
}
, así como "fijo", pero parece ser más complicado de lo esta solución simple ...
Hacer esto tiene un efecto , simplemente no es tan agradable. Hacer este cambio hace que permanezca estático en el lado izquierdo, pero realmente no puedo desplazarme hacia abajo, y el th realmente no parece funcionar.
EDIT 2:
he comenzado a implementar la solución dada a continuación, aunque no estoy del todo seguro de mi capacidad para jugar con este plugin. De todas formas, aquí es el estado actual de retoques:
Voy a seguir actualizando a medida que avanzo ...
consigo un error que dice this.offset.top es nulo o no un objeto ... bla,
Este código va en lo document.ready:
var currentTop = 0;
var currentLeft = 0;
var currentWidth = 0;
var currentHeight = 0;
var currentContent = "";
var currentDiv = "";
var currentID = "";
$('td:first-child').each(function (index) {
currentTop = $(this).offset.top;
currentLeft = $(this).offset.left;
currentWidth = $(this).width;
currentHeight = $(this).height;
currentContent = $(this).html();
currentID = "fixed_column_cell" + index;
currentDiv = "<div class=\"fixed_column_cells\" id=\"" + currentID + "\">" + currentContent + "</div>";
$('body').append(currentDiv);
$('#' + currentID).offset({ top: currentTop, left: currentLeft });
$('#' + currentID).width(currentWidth);
$('#' + currentID).width(currentHeight);
});
$('fixed_column_cells').css('position', 'fixed');
Actualmente atrapado
Será muy difícil modificar el complemento para hacer lo que desee. –
Cuando dices que es muy difícil, ¿cuánto tiempo crees que le tomaría a un desarrollador veterano? –
Creo que para comprender completamente lo que hace el plugin, implementar esta característica para que sea compatible con todo lo demás (paginación, columnas clasificables, columna de tamaño variable, etc.) y tener este trabajo en todos los navegadores principales tomaría al menos varios dias. –