Texte, die in Flash angezeigt werden sollen, entziehen sich zumeist den Suchmaschinen. Sei es, weil sie per XML oder Datenbank nachgeladen werden, sei es, weil sie fest im Flash stehen (was wohl immer seltener vorkommt). Solche Texte bleiben den Suchmaschinen verborgen, weil sie nicht im HTML der Seite stehen.
Deswegen hatten wir die Idee: 'Warum die Texte nicht einfach ins HTML packen?' Genau das wird auf dieser Seite hier gemacht. Diese Texte stehen tatsächlich im HTML. Der Aufbau ist wie folgt: Der Flash Film wird unter Verwendung der bekannten Javascript API SWFObject geschrieben. Diese verlangt ja grundsätzlich nach einem div, in den später der Flash Film reingeschrieben wird. Ebenfalls in diesen div kann man HTML einbringen, welches angezeigt wird, wenn der Nutzer kein Flash Plugin hat. Hier schreiben wir nun unseren Inhalt in HTML Form rein und zwar so, dass es auch ohne Flash für den Nutzer gut lesbar ist. Dieses HTML speichern wir uns per Javascript in einer Variable unter Verwendung des 'innerHTML' Attributs zwischen.
Ausserdem schreiben wir eine kleine Javascript Funktion, die nichts anderes tut, als den Inhalt dieser Variable zurückzugeben. Wenn SWFObject nun den Flash Film schreibt, ist das Erste, was dieser Flash Film tut, dass er unter Verwendung der in Flash bekannten 'ExternalInterface' Klasse die kleine Javascript Funktion aufruft und sich somit den HTML Inhalt holt, der inzwischen reel bereits durch das Flash überschrieben wurde (damit das dennoch funktioniert, sollte man 'innerHTML.toString()' verwenden, also nicht einfach eine Referenz speichern). Dieses HTML ist optimalerweise auch einfach valides XML (dafür muss natürlich gesorgt werden), kann also von Flash problemlos ausgewertet und in individuellen Textfeldern usw. zugewiesen werden. Fertig!
28.09.2007, Sven Busse