webForumDet fria alternativet

for-sats vill inte fungera

Flash

5 svar · 477 visningar · startad av Davida

Medlem sedan okt. 2000219 inlägg
Frågan#1

Hej!

Varför vill inte följande forsats fungera?

	for(var i = 0; i>10; i++){
		this._y = this._y + 10;
	 }
	this._y = this._y + 10;

Den borde väl flytta this 10 gånger? Men this flyttas bara en gång och det är på sista raden.

Vad är fel?

Medlem sedan nov. 20041 189 inlägg
#2

nej, den borde flyttas 11 gånger. 10 gånger i loopen och en gång i slutet ;).

men jo, du får nog visa mer kod om du vill ha ett bättre svar...

Medlem sedan okt. 2000219 inlägg
#3

Hej!

Jag har inte mer kod, ja förutom en

on(press){

}

Knappen ska bara flytta ett objekt.

Medlem sedan okt. 2000219 inlägg
#4

Märk väl, den sista raden fungerar, men inte när den står inne i for-satsen.

Medlem sedan nov. 20022 355 inlägg
#5
	for(var i = 0; i  [B]<[/B]  10; i++){
		this._y = this._y + 10;
	 }

;)

Medlem sedan maj 2003750 inlägg
#6

Den flyttas tio gånger men innan grafiken ritas om. Därför ser det ut som om den flyttas bara en gång.

Grafiken ritas om mellan "bildrutor" alltså FPS ggr per sekund. Dessutom så måste allt skript köra klar innan grafiken ritas om. Därför måste du istället antingen använda ett interval satt med setInterval eller så använda enterFrame händelser.

t.ex:

on(press){
    this.count = 0;
    this.onEnterFrame = function()
    {
        this._y += 10;
        if(++ this.count > 9)
             delete this.onEnterFrame;
    }
}

/Mirandir

257 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)