webForumDet fria alternativet
Logga in / Bli medlem

scrollen på min sida

JavaScript

3 svar · 251 visningar · startad av voigtann1

Medlem sedan juni 20019 519 inlägg
Trådstart#1

eftersom inte jag har gjort den (kan inte mycket javascript)

hade bestämt mej att ändra om sidan, men jag gillar starkt min design så tänke jag kanske göra lite på "min" scroll

var x = 0; dx = 0; dx2 = 1; 

function scrollit(dest_arg) { 
	dest=dest_arg;
	ww = 650          //  ww är sidbredden... 
	dest = dest*ww 
	dx = Math.ceil(Math.abs(dest - x) / 30); 
	if (dx>50) { dx = 50; } 
	dx2 = 1; 
	if (dest < x) { dx2 = -1;} 
	doScroll();  
}

function doScroll(){
	if ((dx+1)*(dx+2)/2 <= Math.abs(x-dest)) { 
		dx = dx + 1; 
	} else { 
		if (dx*(dx+1)/2 > Math.abs(x-dest)) { 
			dx = dx - 1;
		 } 
	}  
	x = x + dx*dx2;  
	if (dx>50) { dx = 50; } 
	scrollTo(x, 0); 
	if(dest != x) {
		setTimeout("doScroll();",1);
	}
}

Jojoxx version av den.. jag skulle antingen:
1. ha så att scrollen "ökar" farten suckssivt eller
2. Ha så att scrollen scrollar vanligt och sen scrollar den lite extra och sen tillbaka (som en liten sticky post) typ hoppas ni förstår vad jag menar

Medlem sedan dec. 20003 887 inlägg
#2

Du får ta och ändra i doScroll()-funktionen. Hastigheten bestäms av dx. -1 eller +1 innebär att texten drar en pixel åt vänster eller en åt höger. Istället för +/- 1 så får du ha ytterligare en variabel, som du skickar varje gång till funktionen i setTimeout.
T.ex. så kan du ha dx += xSpeed. Och samtidigt ha xSpeed += 1. Eller något sådant.

Det är bara att experimentera... ;)

Medlem sedan juni 20019 519 inlägg
#3

*jag kan inget om javascript* lite mer "copy&paste" i kodena hade hjälpt :e

Medlem sedan juni 20019 519 inlägg
#4

*morr* går inte .... x(

255 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)