Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 13-01-2009, 09:44   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2007
Beiträge: 17
MouseOver bei TextEvent möglich?

Hallo zusammen,

ist es irgendwie möglich, sozusagen das MouseOver-Event eines Textlinks abzufangen? Also ich habe einen Textlink der Art:

PHP-Code:
 import flash.text.TextField;
 
import flash.events.TextEvent;   
 
 var 
tf:TextField = new TextField();
 
tf.htmlText "<a href='event:myEvent'>Click Me.</a>";
 
tf.addEventListener("link"clickHandler);
 
addChild(tf);
 
 function 
clickHandler(e:TextEvent):void {
  
trace(e.type); // link
  
trace(e.text); // myEvent
 

Wenn ich im Text mit der Maus über den Link fahre, erscheint ja der Hand-Mauszeiger, also AS erkennt den Link. Und dieses Event würde ich gerne abfangen und das zugrunde liegende textevent referenzieren. Gibt es da eine Möglichkeit?

Ziel soll es sein, einen Text-Tooltip erscheinen zu lassen, der seinen Inhalt in Abhängigkeit von dem Namen des TextLinks dynamisch generiert und bei einem Klick eine andere Funktion ausführt.

Falls ich da irgendwie zu kompliziert denke, bin ich natürlich auch für eine andere Idee zu haben

Danke für alle Hinweise, Chasja
chasja ist offline   Mit Zitat antworten
Alt 13-04-2011, 16:52   #2 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
du dachtest da vor zwei jahren gar nicht zu kompiziert.
und auch heute noch wär so eine funktion recht sinnvoll...

kennt jemand ein workarround?

lg
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 13-04-2011, 17:45   #3 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
ich hab hier mal einen versuch eines workarrounds:
ActionScript:
  1. private function mouseMoveOverTxt(e:MouseEvent):void {
  2.             var tf:TextField = e.target as TextField;
  3.             var inx:int = tf.getCharIndexAtPoint(evt.localX, evt.localY);
  4.             var startIndex:int = 0;
  5.             var endIndex:int = 0;
  6.             var eventText:String = "";
  7.             if (inx >= startIndex && inx < endIndex) {
  8.                 dispatchEvent(new TextEvent("mouseOver", false, false, eventText));
  9.             }
  10.         }
das macht bisher noch nicht so viel sinn. der gedanke ist aber, per regex die
indices der textteile innerhalb von <a>-tags mit "event"-href auszulesen und
per mouse-move-event abzufragen ob die maus darüber ist oder nicht...

hier ist allerdings mein problem: regex. das ist mir nach einiger recherche
immer noch ein mysterium (ähnlich wie stochastik).

kann mir evtl jemand auf die sprünge helfen, wie eine abfrage aussehen
müsste, die "startIndex" und "endIndex" liefert? im besten fall ein array mit
diesen wertepaaren (falls mehrere links in einem text sind). und das
sahnehäubchen wäre dann noch, dass sich die indices auf den puren text,
ohne html-tags beziehen, damit die position dann auch stimmt...

tyvm!!
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 17-04-2011, 13:31   #4 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
erweiteres textfield mit <a>-hover via regexp
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
regex, textevent

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:02 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele