Verwandte Wie ich in einem Kommentar erklärt, wird die Schriftrolle nicht wirklich zu ändern. Die Scrollfunktion des Fensters basiert auf "distance from top" (DfT). Das heißt, wenn Sie keine Bildlaufleiste haben, sind Sie DfT 0. Sobald Sie die Bildlaufleisten eingeführt haben, haben Sie jetzt eine Distanz zum Arbeiten.
Da der Inhalt länger wird, ist das Ansichtsfenster nur so viele Pixel hoch, dass einige Inhalte am unteren Rand der Seite "fallen" (prepend macht die DfT um die Höhe Ihres neuen Elements ab).
Der beste Weg, den ich mir vorstellen kann, ist, es mit der Höhe des neuen Elements zu kontern. Dadurch können Sie zu einer Position blättern. Wenn Sie neue Elemente hinzufügen, ändern Sie die Bildlaufposition entsprechend.
Hier ist ein Beispiel dafür, was ich meine: http://jsfiddle.net/bradchristie/66RvC/1/
Und der Code (als Referenz):
var f = function(){
var t = $(window).scrollTop(), // Window's current scroll position
$d = $(d()).prependTo('#main'), // store the new element
h = $d.outerHeight(); // also get its height
if (t){ // Only adjust if they've scrolled
$(window).scrollTop(t + h); // add the delta to the scroll position
}
setTimeout(f, 1000);
};
Der Blick nicht ändert; Die Seite wird länger, sodass die Bildlauflänge von oben statisch ist, während die gesamte Seitenlänge dynamisch größer wird (die unteren Elemente gehen also über das Ansichtsfenster hinaus). Versuchen Sie es so zu machen, wenn Sie bis zum Ende der Seite scrollen, bleibt das letzte Element in der Ansicht, anstatt "runterzufallen"? –
@BradChristie Ich möchte grundsätzlich 'was ist sichtbar' [mit Ausnahme der Bildlaufleiste, die sich natürlich ändern sollte], um überhaupt nicht zu ändern, unabhängig von Vorstufen. – Prasanth