| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Achim - das Original Registriert seit: Feb 2002 Ort: Büllesfeld
Beiträge: 287
| onRollOver Aktion unterbrechen
Hallo Zusammen, steh mal wieder gerade im Wald. Wer kann mir sagen, wie ich eine onRollOver Akltion eines Buttons für eine gewisse Zeit unterbrechen kann. In meiner Navi habe ich auf dyn. generierte Buttons ein RollOVer gelegt. Dies bewirkt dann, dass der Button sich bewegt. Wenn er nun mit anderen Buttons überlappt, die den gleichen Befehl haben, kommen die nicht mehr von einander weg. Beispiel könnt Ihr hier anschauen: http://www.bullsfield-studio.de/test/3mj/ Dort mal in einen Unterpunkt die Submenü-Punkte abwechselnd auswählen. Da wird das Problem deutlich. Jemand eine Idee? Thanx!
__________________ dä hädbängä Achim - das Original Die Welt braucht mehr verrückte Menschen - seht doch, wohin uns die Normalen gebracht haben. |
| | |
| | #2 (permalink) |
| Euer Nuser Registriert seit: Apr 2004 Ort: Sand-City
Beiträge: 3.483
|
per onRollOver? Hektische Sache, Deine Navi. Das Wechselscript würde ich nur per onPress ausführen lassen. Poste mal Deinen Code dazu. So ins Blaue kann ich Dir da nur den Trick mit PHP-Code: --pp
__________________ Die Krinimalpolizei gibt bekannt: |
| | |
| | #3 (permalink) |
| Achim - das Original Registriert seit: Feb 2002 Ort: Büllesfeld
Beiträge: 287
|
ok, hier wird die Subnavi generiert: Code: //
// Sub-Navi
//
subNavi = function (mc, punkt) {
anz = _global.mein_xml.firstChild.childNodes[punkt-1].childNodes.length;
for (z=0; z<anz; z++) {
tl.createEmptyMovieClip("sub"+z, 200+z);
tl["sub"+z]._x = mein_xml.firstChild.childNodes[punkt-1].childNodes[z].attributes.xpos;
tl["sub"+z]._y = mein_xml.firstChild.childNodes[punkt-1].childNodes[z].attributes.ypos;
tl["sub"+z].fadeIn();
tl["sub"+z].attachMovie("containerSub", "container", 20+i);
// id für identifizierung
tl["sub"+z].container.id = z;
tl["sub"+z].container.mc = "sub";
// Textfeld im Container mit Textformat
tl["sub"+z].container.createTextField("mainText", 31, 0, 0, 200, 22);
tl["sub"+z].container.mainText.embedFonts = true;
tl["sub"+z].container.mainText.background = true;
tl["sub"+z].container.mainText.backgroundColor = 0x333333;
tl["sub"+z].container.mainText.setNewTextFormat(my_fmtSub);
tl["sub"+z].container.mainText.htmlText = mein_xml.firstChild.childNodes[punkt-1].childNodes[z].attributes.inhalt;
// Bei Mouse Over -> SubNavi nach rechts oben, aktiver Punkt nach links
tl["sub"+z].container.onRollOver = function() {
for (a=0; a<anz; a++) {
if (a<>this.id) {
tl["sub"+a].pos((850-this._width*anz)+((this._width+5)*a), 190);
} else {
tl["sub"+a].pos(90, 220);
contentGen(punkt, this.id);
}
}
};
}
}; Code: //
// Positionierung
//
MovieClip.prototype.pos = function(xP, yP) {
this.onEnterFrame = function() {
this._x += ((xP-this._x)/5);
this._y += ((yP-this._y)/5);
if ((Math.abs(xP-this._x)<1) && (Math.abs(yP-this._y)<1)) {
this._x = xP;
this._y = yP;
delete this.onEnterFrame;
}
};
};
__________________ dä hädbängä Achim - das Original Die Welt braucht mehr verrückte Menschen - seht doch, wohin uns die Normalen gebracht haben. |
| | |
| | #4 (permalink) |
| Achim - das Original Registriert seit: Feb 2002 Ort: Büllesfeld
Beiträge: 287
| PHP-Code:
__________________ dä hädbängä Achim - das Original Die Welt braucht mehr verrückte Menschen - seht doch, wohin uns die Normalen gebracht haben. |
| | |
| | #5 (permalink) |
| Euer Nuser Registriert seit: Apr 2004 Ort: Sand-City
Beiträge: 3.483
| PHP-Code: --pp --pp
__________________ Die Krinimalpolizei gibt bekannt: |
| | |
| | #7 (permalink) |
| ActionStripper Registriert seit: Nov 2001 Ort: Oldenburg
Beiträge: 3.275
|
also auf anhieb würde ich vorschlagen, die gesamte button-action in eine function zu legen. wenn das rollOVer unterbrochen werde soll, schreibst du halt delete myButton.onRollOver wenn es wieder einstarten soll, startest du die button-funktion wieder.
__________________ Design ist AUCH Geschmackssache. |
| | |
| | #8 (permalink) |
| Achim - das Original Registriert seit: Feb 2002 Ort: Büllesfeld
Beiträge: 287
|
das funzt leider auch nicht. Da das Problem liegt ja darin, dass die Bewegung erst bei MouseOver aufgerufen wird. Zu dem Zeitpunkt befinde ich mich ja bereits in der onRollOVer Funktion. Wenn ich diese dann delete, gibt es einen Rukursions-Fehler. Und wenn ich nach Beendigung der Bewegung die gleiche MouseOver wieder aufrufen würde, würde ich eine MouseOver in einer MouseOver aufrufen, die dann wieder die Bewegungs-Funktion aufrufen würde -> Endlosschleife. Vielleicht habe ich aber auch den komplett falschen Ansatz. Muss man das ander lösen?
__________________ dä hädbängä Achim - das Original Die Welt braucht mehr verrückte Menschen - seht doch, wohin uns die Normalen gebracht haben. |
| | |
| | #9 (permalink) |
| ActionStripper Registriert seit: Nov 2001 Ort: Oldenburg
Beiträge: 3.275
|
also ich hab mir jetzt mal dein beispiel angesehen. HUI - das einzige, was mir dazu einfällt: mach' ne callback-funktion rein. und zwar tötest du ALLE onRollOvers, wenn eine bewegung eingeleitet wird und aktiverist sie wieder, wenn die bewegung abgeschlossen ist. ich kann mir beim besten willen nicht vorstellen, daß sowas nicht funzt.
__________________ Design ist AUCH Geschmackssache. |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |