nietaL
NGBler
Hey Leute,
mit dem unten geposteten JS veranlasse ich den Browser nach Neuladen der Seite an die Position herunterzuscrollen, an der er sich befand, als die Seite neu aufgerufen wurde. Das funktioniert wunderbar. Allerdings - und das ist schon irgendwie logisch - baut er erst die Seite auf und scrollt dann runter. Das dauert keine 10tel Sekunde und dennoch ist es für das Auge sehr unangenehm, wenn man im unteren Bereich der Seite mehrere Klicks machen möchte und er jedes Mal zappelt - irgendwann bekommt man einen epileptischen Anfall
Allerdings schafft er es auch manchmal, dass sich die Änderungen auftun, ohne dass er wackelt - vor allem wenn nicht viel NEUES zu laden ist.
Kann man den Browser dazu bringen, erst alles (im Hinterkopf) neuzuladen, die Scrollposition auszulesen und dann das Bild freizugeben? Ich hoffe, ihr wisst, was ich meine. Die Seite hat viele Grafiken.
[src=javascript]function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca;
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
window.onload = function() {
var yScroll = readCookie("scrollPos");
if(yScroll)
scrollTo(0, yScroll);
window.onscroll = function() {
var yScroll;
if (self.pageYOffset) {
yScroll = self.pageYOffset;
} else if (document.documentElement && document.documentElement.scrollTop){ // Explorer 6 Strict
yScroll = document.documentElement.scrollTop;
} else if (document.body) {// all other Explorers
yScroll = document.body.scrollTop;
}
createCookie("scrollPos", yScroll, 14)
}
}
[/src]
mit dem unten geposteten JS veranlasse ich den Browser nach Neuladen der Seite an die Position herunterzuscrollen, an der er sich befand, als die Seite neu aufgerufen wurde. Das funktioniert wunderbar. Allerdings - und das ist schon irgendwie logisch - baut er erst die Seite auf und scrollt dann runter. Das dauert keine 10tel Sekunde und dennoch ist es für das Auge sehr unangenehm, wenn man im unteren Bereich der Seite mehrere Klicks machen möchte und er jedes Mal zappelt - irgendwann bekommt man einen epileptischen Anfall
Allerdings schafft er es auch manchmal, dass sich die Änderungen auftun, ohne dass er wackelt - vor allem wenn nicht viel NEUES zu laden ist.
Kann man den Browser dazu bringen, erst alles (im Hinterkopf) neuzuladen, die Scrollposition auszulesen und dann das Bild freizugeben? Ich hoffe, ihr wisst, was ich meine. Die Seite hat viele Grafiken.
[src=javascript]function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca;
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
window.onload = function() {
var yScroll = readCookie("scrollPos");
if(yScroll)
scrollTo(0, yScroll);
window.onscroll = function() {
var yScroll;
if (self.pageYOffset) {
yScroll = self.pageYOffset;
} else if (document.documentElement && document.documentElement.scrollTop){ // Explorer 6 Strict
yScroll = document.documentElement.scrollTop;
} else if (document.body) {// all other Explorers
yScroll = document.body.scrollTop;
}
createCookie("scrollPos", yScroll, 14)
}
}
[/src]