hitArea

Berühre den Umkreis des Smileys. In einem Radius von 50 Pixeln ist der sensitive Bereich definiert.

Auf der Bühne befindet sich ein Movieclip Instanzname "mc1". Es ist das Smiley. Er hat einen Durchmesser von 25 Pixeln.

var hit = new createjs.Shape();
hit.graphics.beginFill("red").drawCircle(0, 0, 50);


Es wird Shape Objekt erzeugt darin ein Graphics Object mit einem Radius von 50 Pixeln und einer Positionierung im Nullpunkt. Das Shape Object wird nicht der Display Liste hinzugefügt und ist somit nicht sichtbar.

this.mc1.hitArea = hit;
Stattdessen wird es der hitArea Eigenschaft des Movieclips zugewiesen und dient somit als sensitiver Bereich des Movieclip,
ähnlich wie das vierte Bild "Aktiv" in einer Schaltfläche.

 



stage.enableMouseOver(10);

var hit = new createjs.Shape();
hit.graphics.beginFill("red").drawCircle(0, 0, 50);

this.mc1.hitArea = hit;

this.mc1.addEventListener("mouseover", handleInteraction);
this.mc1.addEventListener("mouseout", handleInteraction);
function handleInteraction(evt) {
	evt.target.alpha = (evt.type == "mouseover") ? 0.5 : 1;
}
	

Die Anweisung in der Funktion handleInteraction ist ein ternärer Bedingsoperator. Sie enstpricht folgender if Anweisung.

if(evt.type == "mouseover"){
evt.target.alpha = 0.5;
}else{
evt.target.alpha = 1;
}