webForumDet fria alternativet

Global funktion

3 svar · 235 visningar · startad av Davida

DavidaMedlem sedan okt. 2000219 inlägg
#1

Hej!

Kan jag skapa en global funktion som hela min Flash-produktion kommer åt?

Hur gör jag det i så fall?

MVH
David

mirandirMedlem sedan maj 2003750 inlägg
#2

Jodå:

_global.funktionsnamn = function()
{
      // Funktionens kod.
}

/Mirandir

DavidaMedlem sedan okt. 2000219 inlägg
#3

Problem med att få den globala funktionen att fungera

Hej!

Jag har gjort följande:

_global.positionatemenu = function()
{
      _global.onmove="ja";
	  _global.menydirection = "up";	 
	  _global.movemenu();
}

_global.movemenu = function()
{
    this.count = 0;
    this.onEnterFrame = function()
    {
	 
  	 if(_global.direction=="down"){
		if(_root.meny_slide._y<=_global.menybottomval){
        	_root.meny_slide._y += 6;
			_global.menyyval=_root.meny_slide._y;
		 }else{
			 _global.onmove="nej"; 
		 }
	 }else{
		 if(_root.meny_slide._y>=_global.menytopval){		 
	        _root.meny_slide._y -= 6;
			_global.menyyval=_root.meny_slide._y;			
		 }else{
			 _global.onmove="nej"; 
		 }
	 }
        if(++ this.count > 20){
			 _global.onmove="nej";
             delete this.onEnterFrame;
		}
    }
}

Därefter försöker jag anropa det så här

_global.positionatemenu();

Då flyttas inte min meny, kopierar jag däremot in koden direkt så fungerar det perfekt.

Vad gör jag för fel.

mirandirMedlem sedan maj 2003750 inlägg
#4

Du kan inte använda "this" i en global funktion. Du måste istället lägga till en referens till ett filmklipp eller kanske istället lägga in funktionen i MovieClip-objektets prototype property:

MovieClip.movemenu.movemenu = function()
{
...
}

/Mirandir

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