Je développe un site web avec des éléments nav qui couvrent toute la scène de haut en bas (voir image modifiée ci-dessous) et il est assez facile pour l'utilisateur de quitter la scène avec sa souris , ne déclenche pas les événements MouseEvent.MOUSE_OUT
nécessaires pour "désactiver" les éléments de nav.AS3: MOUSE_OUT ne se déclenche pas lorsque la souris quitte la scène
Dois-je utiliser Event.MOUSE_LEAVE
pour détecter le moment où la souris a quitté la scène et désactiver les éléments nav activés? C'est ce que j'essayais de faire, mais j'ai eu du mal à obtenir un résultat de mon auditeur. Des idées?
alt text http://marcysutton.com/blog/wp-content/uploads/2010/01/redpropeller.png
Pour une classe associée à un MovieClip dans l'IDE Flash, est-ce la syntaxe correcte pour l'enregistrement d'un auditeur Event.MOUSE_LEAVE
? Ça ne semble pas faire quoi que ce soit quoi que je fasse. Est-ce un cas où je dois intégrer le film dans un navigateur pour que l'événement se déclenche?
this.stage.addEventListener(Event.MOUSE_LEAVE, mouseLeaveListener);
Voici ma MainNav.as classe:
package com.redpropeller {
import com.greensock.*;
import com.greensock.plugins.*;
import flash.display.*;
import flash.text.*;
import flash.events.*;
public class MainNav extends MovieClip { // MainNav is a movieclip in the IDE
public var colors:Array;
public function MainNav():void {
colors = new Array(0xee3124, 0xc72a1f, 0xa62c24, 0x912923, 0x7e221c);
TweenPlugin.activate([TintPlugin]);
// trying to target stage through this object
this.stage.addEventListener(Event.MOUSE_LEAVE, mouseLeaveListener);
for(var i:Number=0; i<this.numChildren; i++){
var n = this.getChildAt(i);
n.useHandCursor = true;
n.buttonMode = true;
n.addEventListener(MouseEvent.MOUSE_OVER, navBtnOn);
n.addEventListener(MouseEvent.MOUSE_OUT, navBtnOff);
}
}
public function mouseLeaveListener(e:Event):void {
trace('mouseleave'); // nothing ever happens
}
private function navBtnOn(e:MouseEvent):void {
TweenLite.to(e.currentTarget.bar_mc, 0.01, {tint:0x333333});
}
private function navBtnOff(e:MouseEvent):void {
TweenLite.to(e.currentTarget.bar_mc, 0.01,
{tint:uint(colors[this.getChildIndex(MovieClip(e.currentTarget))])});
// changes color back to specific tint
}
}
}
qu'est-ce que c'est avec ce graphique? votre service d'hébergement est-il revenu à une photo aléatoire? – jedierikb
Je me sentais bizarre de poster le design avant que le site ne soit lancé .... remplacé par un meilleur graphique. –