Ich habe ein sehr seltsames Problem und hoffe, dass mir jemand weiterhelfen kann:
Ich habe ein dynamisches Textfeld, welches sich den Inhalt aus einer externen Textdatei lädt. Das Textfeld wiederum wird in einer Scrollbar-Komponente dargestellt. Der Text selbst soll als HTML ausgegeben werden. Das funktioniert soweit auch alles wunderbar. Sobald ich in den Text aber ein <a>-Tag und anschließend ein <br /> für einen Zeilenumbruch einbaue, verschwindet der mittlere Balken des Scrollbalkens bzw. ich kann mit der Scrollbar nicht mehr Scrollen (sie verliert also vollständig ihre Funktion).
Ein sehr merkwürdiges Problem. Ich durchsuche mittlerweile seit 2 Tagen dieses Forum bzw. das Web nach einer Lösung, werde aber leider nicht fündig. Hier mal die ganzen Codes:
das AS:
PHP-Code:
// Das erlaubt dir Deutsche Umlaute anzuzeigen
System.useCodepage = true;
var myLoadVars = new LoadVars();
myLoadVars.load("news.txt");// da musst du deine Textdatei angeben
// Success ist ein Parameter der von der Funktion zurückgeliefert wird
// Wurde die Datei nicht gefunden dann erhält die Function false als Parameter
// und gibt den Text in der Else schleife aus
myLoadVars.onLoad = function(success)
{
// wurde die Datei gefunden Speicher den Text in der Variablen myText
// und brich dann die Schleife ab.
if(success)
{
for(var i in myLoadVars)
{
if(myLoadVars[i] != onLoad)
{
myText = myLoadVars[i];
break;
}
}
}
// Fehler: z.B. Datei wurde nicht gefunden
else
{
myText = "Fehler beim Laden der Datei!!!";
}
// aufruf der Function createText die dir das Textfeld erzeugt und es
// mit Werten füllt.
createText("feld_txt", 1, 0, 0, 161, 200, myText);
// Aufruf der Function setStyleFormat()
setStyleFormat();
}
// Erzeugt dein Textfeld
function createText(name, d, x, y, w, h, myText)
{
createTextField(name, d, x, y, w, h);
this[name].condenseWhite = true;
// mit this[name] greifst du automatisch auf dein Textfeld zu
// this[name].html = true erlaubt es dir html text darzustellen
this[name].html = true;
// wenn du html text darstellen willst musst du diese Zeile stehen lassen
this[name].htmlText = myText;
// ansonsten this[name].text = myText;
this[name].border = false;
this[name].borderColor = 0x996644;
this[name].autoSize = "none";
this[name].multiline = true;
this[name].wordWrap = true;
this[name].type = "dynamic";
this[name].selectable = true;
// Das Textformat beeinflusst die Darstellung deines Textes im Textfenster
var myTextFormat = new TextFormat();
myTextFormat.font = "Arial";
myTextFormat.size = 11;
myTextFormat.color = 0x505050;
this[name].setTextFormat(myTextFormat);
attachScrollBar(name);
}
// Hängt an dein Textfeld eine ScrollBar Komponente
function attachScrollBar(name)
{
init = {_targetInstanceName:name, horizontal:false};
attachMovie("FScrollBarSymbol","myScrollBar_sb",2,init);
myScrollBar_sb._x = this[name]._x + this[name]._width;
myScrollBar_sb._y = this[name]._y;
myScrollBar_sb.setSize(this[name]._height +1);
}
// Diese Funktion ändert die Darstellung der ScrollBar Komponente
function setStyleFormat()
{
globalStyleFormat.arrow = 0xFFFFFF;
globalStyleFormat.face = 0xCEA426;
globalStyleFormat.shadow = 0x000000;
globalStyleFormat.darkshadow = 0x373F59;
globalStyleFormat.highlight = 0xFFFFFF;
globalStyleFormat.highlight3D = 0xA880C8;
globalStyleFormat.scrollTrack = 0xB48E21;
// Durch applyChanges() wird der ScrollBar aktualisiert
globalStyleFormat.applyChanges();
}
das externe Textfile:
PHP-Code:
&feld_txt=<b>Das ist Blindtext</b><br /><br />
Das ist Blindtext. Das ist Blindtext. Das ist Blindtext.
<a href='http://blindtext.de'>Das ist Blindtext</a><br /> Das ist weiterer Blindtext.
Würd mich tierisch freuen, wenn mir jemand helfen könnte...! Schon mal tausend Dank im Voraus!!!