variable aus Textdatei laden und MC damit verlinken

  • Themenstarter Themenstarter encom
  • Beginndatum Beginndatum
E

encom

Hallo, ich benutze FlashMX.
Ich weiß auch wie ich Variablen aus einer Textdatei laden.
Nun habe ich ca 10 mc's. Wenn ich nun den MC mit dem Namen BB anklicke, soll er prüfen ob es die Variable BB gibt und ob ein Link drin steht. Wenn dem so ist soll er die Seite in einem neuen Fenster aufrufen. steht in der Variablen kein link dann soll nichts passieren.

Kann mir einer Sagen wie ich das mit der Überprüfung und dem Verlinken mache?

Die Textdatei woraus die Variablen geladen werden sollen sieht so aus

BB=http://www.boeblingen.de
ES=http://www.esslingen.de

Danke
 
Hi,

schonmalselobs versuche angestellt? Generell ist es nicht gut bzw. SCHLECHT, wenn man MCs und Variablen gleich benennt. Nenn den MC einfach McBB oder so.

lv = new LoadVars();
lv.load("blubb.txt");
lv.onLoad = function() {
if(_root.lv.bb != "") {
getURL(_root.lv.bb, "_blank");
}
}

Gruß
jenss
 
Generell überprüfst Du die Variablen auf undefined. Wie Jens schon sagte, MCs und Variablen können (sofern sie auf der selben Ebene liegen) nicht identische Bezeichner haben.

Nenne die MCs z.B. clip_AA, clip_BB usw. - und die Variablen dann link_AA, link_BB ...
PHP:
clip_AA.onPress = function() {
    if (isValidURL(link_AA)) getURL(link_AA);
}
Oder, wenn Du alle Handler in einer Schleife zuweisen willst:
PHP:
for (var i in this) {
    if (typeof(this[i]) == "movieclip") {
        var but = this[i];
        but.onPress = function() {
            var lnk = eval("link" + this._name.substr(this._name.indexOf("_")));
            if (isValidURL(lnk)) getURL(lnk);
        }
    }
}
Dann brauchst Du noch eine Funktion "isValidURL", die den Link auf Gültigkeit prüft. Da es in Flash so gut wie keine regulären Ausdrücke gibt (abgesehen von TextField.restrict), musst Du die Links "manuell" auf die Bestandteile gültiger URLs prüfen.

Gruß
.
 
Hm, also ich bekomme irgendwie immer dieses sch** undefined.

Ich habe jetzt mal folgendes versucht

Die Textdatei links.txt sieht so aus

L_BB=http://www.ensacom.de
L_ES=http://www.date.de

Ich habe einen MC mit dem Namen ES dem ich folgende Action zugewiesen habe.

on (release)
{
lv = new LoadVars();
lv.load("links.txt");
lv.onLoad = function()
{
trace(_root.lv.L_ES);
if(_root.lv.L_ES != "")
{
getURL(_root.lv.L_ES, "_blank");
}
}

Das trace gibt mir immer ein undefined,
Woran liegt das denn nur?

Danke
 
Sorry, habe den Fehler gefunden.
Es lag an der Textdatei ich habe das & zwischen den Variablen vergessen.

Ich danke euch beiden
 
In deiner Textdatei müssen die Variablen mit "&" aufgezählt werden.

L_BB=http://www.ensacom.de&L_ES=http://www.date.de

Edit->hm zu spät gepostet :(
 
Zurück