würde ich sagen, dass es ein paar Möglichkeiten, zu erreichen, was Sie wollen, und eine einfache Möglichkeit ist:
- eine Funktion erstellen, die die Sichtbarkeit der Tabelle gegenüber dem Ansichtsfenster überprüft;
-Code unten:
function checkVisible() {
var bottom_of_table = $("#mytable").offset().top + $("#mytable").outerHeight();
var bottom_of_screen = $(window).scrollTop() + $(window).height();
if(bottom_of_screen > bottom_of_table){
$("#buttons-container").removeClass('bottom-fixed');
}
else {
$("#buttons-container").addClass('bottom-fixed');
}
}
- Wenn das Ansichtsfenster überschreitet, eine CSS-Klasse, um Ihre Schaltflächen Container hinzufügen, die es auf den unteren Rand des Bildschirms fixiert. Andernfalls entfernen Sie diese Klasse und zeigen Sie den Schaltflächencontainer normalerweise am unteren Rand der Tabelle an.
Sie würden wollen, dass diese Funktion überprüfen last- und Fenster Resize laufen, wie folgt:
$(document).ready(function() {
checkVisible();
$(window).on('resize', checkVisible);
});
Ich habe deine Geige aktualisiert: http://jsfiddle.net/12nt19vg/12/show/
Versuchen Sie die Größe des Fensters und lassen Sie mich wissen, ob dies das gewünschte Verhalten ist.
BEARBEITEN: Mit Ihrer zusätzlichen Spezifikation in den Kommentaren habe ich ein äußeres div zu Ihrem buttons container hinzugefügt und Ihr CSS geändert, um visuell den Effekt zu erzeugen, den Sie suchen.
Bitte nehmen Sie sich einen Blick auf diese Geige: http://jsfiddle.net/12nt19vg/27/show/
Ich denke, das sollte mit CSS auch getaggt werden. – which1ispink
danke, css wird hinzugefügt – peterpeng