SWFObject wird schon seit einer Weile offiziell von Adobe empfohlen, um Flashinhalte in HTML einzubetten. Das Open Source Projekt SWFObject hätte eigentlich schon mit CS4 in Flash integriert werden sollen, was allerdings ausblieb.

Mit CS5 ist es nun endlich soweit. Allerdings ist die Option für SWFObject sehr versteckt. Hier eine kurze Erklärung, wie man HTML-Seiten mit SWFObject direkt aus Flash veröffentlicht.

Standard-Veröffentlichung (ohne SWFObject)

Im Vergleich zur Vorgängerversion fällt auf, dass man beim Exportieren kein nerviges Adobe-Skript (AC_RunActiveContent.js) erhält. Stattdessen wird der Flashinhalt einzig und allein über HTML-Elemente integriert. Somit hat man lediglich zwei Files, die .html-Datei und die .swf-Datei.

HTML:
  1. classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="550" height="400" id="standard-cs5" align="middle">
  2.                 name="movie" value="standard-cs5.swf" />
  3.                 name="quality" value="high" />
  4.                 name="bgcolor" value="#4a3a5e" />
  5.                 name="play" value="true" />
  6.                 name="loop" value="true" />
  7.                 name="wmode" value="window" />
  8.                 name="scale" value="showall" />
  9.                 name="menu" value="true" />
  10.                 name="devicefont" value="false" />
  11.                 name="salign" value="" />
  12.                 name="allowScriptAccess" value="sameDomain" />
  13.                
  14.                 type="application/x-shockwave-flash" data="standard-cs5.swf" width="550" height="400">
  15.                     name="movie" value="standard-cs5.swf" />
  16.                     name="quality" value="high" />
  17.                     name="bgcolor" value="#4a3a5e" />
  18.                     name="play" value="true" />
  19.                     name="loop" value="true" />
  20.                     name="wmode" value="window" />
  21.                     name="scale" value="showall" />
  22.                     name="menu" value="true" />
  23.                     name="devicefont" value="false" />
  24.                     name="salign" value="" />
  25.                     name="allowScriptAccess" value="sameDomain" />
  26.                
  27.                     href="http://www.adobe.com/go/getflash">
  28.                         src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash Player" />
  29.                    
  30.                
  31.                
  32.                
  33.            

Ich habe ein entsprechendes Beispiel hier abgelegt: Standard CS5 Export

Veröffentlichung mit SWFObject

Der Trick, damit SWFObject verwendet wird, ist folgender: Man muss die Checkbox „Flash-Version feststellen” aktivieren. Dann wird ein HTML-Template samt swfobject.js exportiert. Zum Einsatz kommt die Methode „Dynamic Publishing” ( siehe Tutorial SWFObject zum Einbetten von Flash (.swf) in HTML).

Allerdings sollte man noch etwas aufräumen und die Kommentare entfernen, bevor man dies ins Netz stellt und die drei Files (.swf, .html, .js) hochlädt.

HTML:
  1. type="text/javascript">
  2.            
  3.            
  4.            
  5.            
  6.             var swfVersionStr = "10.0.0";
  7.            
  8.             var xiSwfUrlStr = "";
  9.             var flashvars = {};
  10.             var params = {};
  11.             params.quality = "high";
  12.             params.bgcolor = "#4a3a5e";
  13.             params.play = "true";
  14.             params.loop = "true";
  15.             params.wmode = "window";
  16.             params.scale = "showall";
  17.             params.menu = "true";
  18.             params.devicefont = "false";
  19.             params.salign = "";
  20.             params.allowscriptaccess = "sameDomain";
  21.             var attributes = {};
  22.             attributes.id = "swfobject-cs5";
  23.             attributes.name = "swfobject-cs5";
  24.             attributes.align = "middle";
  25.             swfobject.createCSS("html", "height:100%; background-color: #4a3a5e;");
  26.             swfobject.createCSS("body", "margin:0; padding:0; overflow:hidden; height:100%;");
  27.             swfobject.embedSWF(
  28.                 "swfobject-cs5.swf", "flashContent",
  29.                 "550", "400",
  30.                 swfVersionStr, xiSwfUrlStr,
  31.                 flashvars, params, attributes);
  32.        

Auch hier ein passendes Beispiel: SWFObject CS5 Export