[5] Bei Mouseover Eigenschaft eines anderen Objekts ändern

sixx66

Mitglied
Hiho zusammen!

Also, bin auf folgendes Problem gestoßen. Ich möchte beim Mouseover über einem Objekt den Alphawert eines anderen Objektes ändern (möglichst so das es sich einfadet) und andersrum. Wär echt dringend, sonst sitz ich heut noch um 8 auf der Arbeit :(

Danke schonmal!
 
ist doch kein problem:

bsp: du hast 2 objekte, beides mc's. die brauchen beide einen instanznamen.

clip1_mc
clip2_mc

jetzt brauchst du 2 funktionen zum ein und ausfaden, hier 2 vorschläge:

PHP:
MovieClip.prototype.fadeOut = function(fadeSpeed) {
	var mca = this;
	var mc = _level0.createEmptyMovieClip("EHSource", 444);
	mc.onEnterFrame = function() {
		if (mca._alpha>1) {
			mca._alpha -= fadeSpeed;
		} else {
			delete mc.onEnterFrame;
			EHSource.removeMovieClip();
		}
	};
};
MovieClip.prototype.fadeIn = function(fadeSpeed) {
	var mca = this;
	var mc = _level0.createEmptyMovieClip("EHSource", 555);
	mc.onEnterFrame = function() {
		if (mca._alpha<99) {
			mca._alpha += fadeSpeed;
		} else {
			delete mc.onEnterFrame;
			EHSource.removeMovieClip();
		}
	};
};


so, jetzt willst du, dass bei einem rollover über clip1 der clip 2 ausfadet:

clip1_mc.onRollOver=clip2_mc.fadeOut

bei fragen fragen

gruss skyla
 
uups. du hast ja F5 ! das prinzip bleibt das geleiche. nur wie du das mit dem faden hinkriegst... vielleicht mit einem tween und dann

on(rollOver){
clip2_mc.play()
}

keine ahnung, möchte nie mehr auf mx verzichten. besorg dir doch mx ;)
 
Huii! danke für die schnelle Antwort!

Hab´s mit nem Tween gelöst, schade das es in FL5 net eleganter zu lösen ist.

MX hab ich ja daheim, nur auf der Arbeit hab ich nur das 5er ;((
Wenn des Softwaregeraffel nur net so teuer wär... (wir benutzen auch noch PS 5.5) *UmMitleidWinsel*
 
Denk' auch, dass das nur mit den dynamischen EventHandlern von Flash MX so möglich ist.

Eine Eigenschaft bei RollOver zu verändern ist auch in F5 nicht das Thema, allerdings dürfte es schwer werden, dort einen enterFrame-Event buttonabhängig zu implementieren, denn in F5 lagen die Handler-Zuweisungen noch auf dem MC selbst.

Möglich wäre höchstens, dem MC einen Handler für enterFrame zu verpassen, welcher nur dann läuft, wenn eine Testvariable auf _root oder sonstwo den richtigen Wert durch RollOver auf dem MC annimmt:
PHP:
onClipEvent (enterFrame) {
    if (_root.test == "los") {
        _alpha -= 2;
    }
}
und auf dem Button eben:
PHP:
on (RollOver) {
    _root.test == "los";
}
Aber ob das nun wirklich sinnvoll ist gegenüber der Variante mit dem Tweening? :)

Geist
 
Zurück