Флаш анимация без таг embed за валиден XHTML

В този урок за SEO оптимизиране се показва как уеб страница, която показва swf флаш анимация да бъде преработена към валиден XHTML код.

В примера се приема, че флаша се намира в директория /flash/2009.swf и има размери 294 ширина и 260 височина на полето за анимацията.

Ако кода е писан отдавна, вероятно ще изглежда подобно на този:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"  codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"  width="294" height="260"> <param name="movie" value="http://arthuradams.bg/flash/2009.swf" /> <param name="quality" value="high" /> <param name="wmode" value="opaque" /> <embed src="http://arthuradams.bg/flash/2009.swf" wmode="opaque" quality="high"  pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="294" height="260"></embed> </object>

Този код не е валиден XHTML заради тага embed и при опит да мине през валидатора дава грешки, първата от които прилича на тази:

Line 181, Column 17:
Attribute „src“ exists, but can not be used for this element.
<embed src=“http://arthuradams.bg/flash/2009.swf“ wmode=“opaque“ quality=“h…

При търсене в Гугъл по думи като „XHTML embed“ излизат десетки статии, в които грешно се посочва, че горния код може да бъде заменен с нещо като:

<!--[if !IE]> --> <object type="application/x-shockwave-flash" data="http://arthuradams.bg/flash/2009.swf" width="294" height="260"> <!-- <![endif]--> <!--[if IE]> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="294" height="260"> <param name="movie" value="http://arthuradams.bg/flash/2009.swf" /> <!--><!--dgx--> <param name="loop" value="true" /> <param name="menu" value="false" /> <p>This is <b>alternative</b> content.</p> </object> <!-- <![endif]-->

Горния код е грешен и НЕ РАБОТИ!

Според мен единственото XHTML решение работещо на всички браузъри е с използване на JavaScript.
Пример с използване на swfobject.

Изтегли си файла https://ganbox.com/inc/swfobject.js и го качи на твоя сайт. В следващия пример се приема, че е в директория /jscripts
Между таговете head постави реда

<script type="text/javascript" src="/jscripts/swfobject.js"></script>

Там където искаш да се появи флаш филма постави следния div:

<div id="flashcontent" style="float:left; margin:10px"> <strong>You need to upgrade your Flash Player</strong> </div>

Слад това в страницата изпълни скрипта

<script type="text/javascript"> // <![CDATA[ var so = new SWFObject("http://arthuradams.bg/flash/2009.swf", "title", "294", "260", "7", "#FF6600"); so.write("flashcontent"); // ]]> </script>

Естествено вместо arthuradams.bg напиши името на домейна на твоя сайт. Би трябвало да стане и само с „/flash/2009.swf“.

 

Работещ пример има в старница обучения от ArthurAdams.bg, която е валиден XHTML.

В статията се ползва кода на проекта swfobject.

Прочетена:11850
1 - лоша2 - слаба3 - средна4 - добра5 - отлична (1 гласа, оценка: 5,00 от 5. Моля изберете оценка!)
Loading...

4 коментара

  1. Веселин Стефанов 08.06.2009
  2. gbx 26.01.2010
споделиха