webForumDet fria alternativet

Bestämd position i scroller?

1 svar · 153 visningar · startad av bigsky

bigskyMedlem sedan maj 2002821 inlägg
#1

Här nedan är en kod (fungerar i både IE och NS) som scrollar innehållet i ett lager:

<script language="JavaScript" type="text/javascript">
function kolla(){
	this.ver=navigator.appVersion
	this.dom=document.getElementById?1:0
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
	this.ie4=(document.all && !this.dom)?1:0;
	this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5)
	return this
}
bw=new kolla()
var hastighet=50
var loop, timer
function skapa(obj,nest){
    nest=(!nest) ? '':'document.'+nest+'.'
	this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  	this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
	this.jappHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
	this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
	this.up=upp;this.down=ner;
	this.yeah=yeah; this.x; this.y;
    this.obj = obj + "Object"
    eval(this.obj + "=this")
    return this
}
function yeah(x,y){
	this.x=x;this.y=y
	this.css.left=this.x
	this.css.top=this.y
}
function ner(flytta){
	if(this.y>-this.jappHeight+oCont.clipHeight){
		this.yeah(0,this.y-flytta)
			if(loop) setTimeout(this.obj+".down("+flytta+")",hastighet)
	}
}
function upp(flytta){
	if(this.y<0){
		this.yeah(0,this.y-flytta)
		if(loop) setTimeout(this.obj+".up("+flytta+")",hastighet)
	}
}
function japp(hastighet){
	if(loaded){
		loop=true;
		if(hastighet>0) ojapp.down(hastighet)
		else ojapp.up(hastighet)
	}
}
function nix(){
	loop=false
	if(timer) clearTimeout(timer)
}
var loaded;
function MM_ScrollMe(){
	oCont=new skapa('scrollarea')
	ojapp=new skapa('scrolltext','scrollarea')
	ojapp.yeah(0,0)
	oCont.css.visibility='visible'
	loaded=true;
}
onload=MM_ScrollMe;

function fixafokus() {
for (a in document.links) document.links[a].onfocus = document.links[a].blur;
}
if (document.all) {
document.onmousedown = fixafokus;
}
</script>

Problemet är att om man scrollar ner, klickar på en link till en annan sida, och sedan vill komma tillbaka med bakåt-knappen. Ja, då måste man scrolla ner igen. Är det någon som har ett förslag på hur man i koden kan ändra så att man inte behöver scrolla ner igen, efter att man klickar på bakåt-knappen? Laddar man om sidan med scrollern, måste man ju naturligtvis scrolla ner igen, men det går väl inte att ändra på det också, lr?

JaarMedlem sedan juli 2001434 inlägg
#2

Det går inte... det du kan göra är att skicka med en position som ditt lager befinner sig på till de sidor du öppnar. Där tar du emot det o sparar i sessionen. Sedan läser du alltid in sessionens position när du laddar sidan. Det är enda sättet, går inte att få webläsaren att komma ihåg det...

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)