Ich benutze ein jQuery-Plugin von hier http://www.tablefixedheader.com/, um eine Snazzy-Tabelle mit einer festen Überschrift, Sortierung und anderen coolen Features zu machen. Jetzt habe ich auch jqGrid angeschaut, was lächerlich fantastisch aussieht, aber wir machen einige funkige Dinge mit unserer Datenquelle und ich denke nicht, dass es gut genug ist, um mit jqGrid zu spielen.Wie kann ich das jQuery-Plugin von FixedTableHeader ändern, um auch eine feste erste Spalte zu haben?
Wie auch immer, meine Chefs wollen die erste Spalte der Tabelle, die ich erstellt habe, fixiert werden, so dass sie auf der X-Achse scrollen können, aber immer noch die erste Spalte sehen. Wie kann ich dieses Plugin ändern, um diese Funktionalität bereitzustellen?
Jede Hilfe ist sehr
Dank
EDIT geschätzt:
Ich habe versucht, und fügte hinzu:
th:first-child
{
position : relative;
}
td:first-child
{
position : relative;
}
Neben "fixiert", aber es scheint komplizierter zu sein als Diese einfache Lösung ...
Dies hat eine Wirkung Es ist einfach nicht so erfreulich. Durch diese Änderung bleibt es auf der linken Seite statisch, aber ich kann nicht wirklich runterscrollen, und das scheint nicht wirklich zu funktionieren.
EDIT 2:
Ich habe damit begonnen, weiter unten die Implementierung die Lösung, obwohl ich in meiner Fähigkeit nicht ganz sicher bin mit dieser Plugin zu basteln. Wie auch immer, hier ist der aktuelle Stand der Bastelei:
Ich werde die Aktualisierung fortsetzen, wie ich gehe ...
ich eine Fehlermeldung erhalten, die besagt, this.offset.top null ist oder kein Objekt ... blah,
Dieser Code geht in der document.ready Sache:
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');
Derzeit
Es wird sehr schwierig sein, das Plugin zu ändern, um das zu tun, was Sie wollen. –
Wenn Sie sagen, sehr schwierig, wie viel Zeit, denken Sie, würde es einen erfahrenen Entwickler brauchen? –
Ich glaube, um zu verstehen, was das Plugin tut, um diese Funktion zu implementieren, so dass es mit allem anderen kompatibel ist (Paging, sortierbare Spalten, größenveränderbare Spalte, etc), und dies über alle gängigen Browser funktionieren würde mindestens mehrere Tage. –