webForumDet fria alternativet

Gör kollen först när variablerna är inladdade?

Flash

2 svar · 381 visningar · startad av bassebhu

Medlem sedan nov. 20016 480 inlägg
Frågan#1

Hej alla glada!

Jag använder följande kod för att kolla om en text från en php-fil tar upp fler rader än det dynamiska textfältet i flash får plats med. I så fall ska min scrollbar-component visas. Det funkar när jag kör textfield.htmlText = "massa text"; men inte när jag hämtar in exakt lika mycket text från php-filen. Jag gissar att den hinner utföra checkatxt() innan min data från php-filen har hunnit laddats in.

Hur gör jag för att checkatxt() ska dra igång först när det är säkert att mitt dynamiska textfält är fyllt?

contentVars = new LoadVars();
contentVars.load("vars.php");

contentVars.onLoad = function() {
	textfield.htmlText = contentVars.phptextfield;
}

function checkatxt(obj) {
	if(obj.maxscroll<=1) return(false); else return(true);
}

if(checkatxt(textfield) == false) {
	scrollbar.visible = false;
}

Tack!

Medlem sedan maj 2005704 inlägg
#2

onLoad lyssnaren körs då responsen från php skriptet laddats in, så lägg din koll där.

Medlem sedan nov. 20016 480 inlägg
#3

Strålande kompis! Så lätt :)

Rätt svar:

contentVars = new LoadVars();
contentVars.load("vars.php");

contentVars.onLoad = function() {
	textfield.htmlText = contentVars.phptextfield;

	function checkatxt(obj) {
		if(obj.maxscroll<=1) return(false); else return(true);
	}

	if(checkatxt(textfield) == false) {
		scrollbar.visible = false;
	}
}
257 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)