[AS] mouseover met actionscript

Pagina: 1
Acties:
  • 296 views sinds 30-01-2008
  • Reageer

  • crazyheinz
  • Registratie: Juni 2006
  • Laatst online: 29-09 17:32
Ik zou graag dit bereiken met actionscript. Ik heb dit met gewone buttons gedaan maar het moet met actionscipt gedaan worden.

Wat heb ik gedaan: de gele img die je ziet bij mouseover in een mc gestoken.
Daar een actionscriptlaag in aangemaakt: waar deze code in staat:

code:
1
2
3
this.onRollOver = function() {
    this.mouseover_mc._visible = false;
}


Dit wil echter niet werken. De image staat er gewoon, terwijl die enkel tevoorschijn moet komen als je met uw muis er over gaat.
Deze code lijkt me theoretisch juist, kheb ook gekeken of de instancename niet verkeerd was, maar daar ligt het ook niet aan...

  • Xolon
  • Registratie: April 2003
  • Laatst online: 04-02-2019
Probeer het eens dmv het veranderen van de alpha waarde. 2 movieclips op elkaar: 1 geel, 1 normaal. Zet de _alpha van de gele (=mouseover) standaard op 0 via actionscript.Zodra je de onRollOver aanspreekt zal deze e alpha op 100% gooien, zodat de gele mc zichtbaar is.


code:
1
2
3
this.onRollOver = function() {
    this.mouseover_mc._alpha = 100;
}

  • crazyheinz
  • Registratie: Juni 2006
  • Laatst online: 29-09 17:32
Bedankt Xolon.
Uw uitleg klink logisch maar het wil nog altijd niet werken.
Wat heb ik gedaan:

Dus 2 movieclips: de gele en de wit-grijze.
Kheb die in de stage op 2 verschillende layers gestoken. De gele bovenaan omdat via deze werkwijze deze niet zichtbaar zou moeten zijn aangezien alpah = 0.

Dan deze code in de actionscriptlayer van mouseover_mc gezet:
code:
1
2
3
4
mouseover_mc._alpha = 0;
this.onRollOver = function() {
    this.mouseover_mc._alpha = 100;
}


Werkt dus nog niet.
Wat doe ik verkeerd?

  • Xolon
  • Registratie: April 2003
  • Laatst online: 04-02-2019
Maak een soort container movieclip aan en stop daar de 2 mc's ( geel & grijs) in.

_root.mc_container
|
| - mc_geel
| - mc_grijs


code:
1
2
3
4
5
 _root.mc_container.mc_geel._alpha = 0;

_root.mc_container.onRollOver = function() {
 _root.mc_container.mc_geel._alpha = 100;
}


Dus je maakt een movieclip aan en daarin heb je 2 layers die fungeren als normaal en mouseOver laag. Script komt in je _root actionlayer
Dit moet als ik het goed heb werken.

[ Voor 16% gewijzigd door Xolon op 27-04-2007 12:48 ]


  • jeroen84
  • Registratie: Februari 2002
  • Laatst online: 13-09 12:42
crazyheinz schreef op vrijdag 27 april 2007 @ 12:20:
Bedankt Xolon.
Uw uitleg klink logisch maar het wil nog altijd niet werken.
Wat heb ik gedaan:

Dus 2 movieclips: de gele en de wit-grijze.
Kheb die in de stage op 2 verschillende layers gestoken. De gele bovenaan omdat via deze werkwijze deze niet zichtbaar zou moeten zijn aangezien alpah = 0.

Dan deze code in de actionscriptlayer van mouseover_mc gezet:
code:
1
2
3
4
mouseover_mc._alpha = 0;
this.onRollOver = function() {
    this.mouseover_mc._alpha = 100;
}


Werkt dus nog niet.
Wat doe ik verkeerd?
Je hebt niet eens een container per sé nodig. Je refereerd verkeerd. Als ik je uitleg goed begrepen heb tenminste ;)

Als je actionscrip op/in een movieclip zet, dan is "this", de movieclip zelf. Wat je nu doet komt overeen met:
code:
1
2
3
4
_root.mouseover_mc.mouseover_mc._alpha = 0;
_root.mouseover_mc.onRollOver = function() {
    _root.mouseover_mc.mouseover_mc._alpha = 100;
}


Dit kun je veranderen naar:
code:
1
2
3
4
this._alpha = 0;
this.onRollOver = function() {
    this._alpha = 100;
}

  • crazyheinz
  • Registratie: Juni 2006
  • Laatst online: 29-09 17:32
He Jeroen48.
Vree bedankt. Het is gelukt :)
Xolon ook vriendelijk bedankt voor het helpen. Op jouw manier is het echter niet gelukt hier. Zal wel aan mij liggen.

Er is nu wel een andere probleem ontstaan. De rollovers werken, maar als ik over de tekst zelf ga werken deze niet.
Dat is logisch aangezien ze in een verschillende mcs zitten.
Ik heb nu een menuknop mc aangemaakt, menuknop_btn.
In die mc heb ik dan de dynamic textfield van mijn menuknop geplaatst en het gele vlak dat tevoorschijn moet komen bij rollover.

Dan heb ik nog een AS laag aangemaakt; waar dit staat:
code:
1
2
3
this._alpha = 0;
this.onRollOver = function() {
    this._alpha = 100;


De bedoeling van dit is dus dat de gele achtergrond ook tevoorschijn komt bij het rolloveren van het dynamic textfield.
}
Pagina: 1