Публикувано в (SEO, Валиден HTML код, Уеб програмиране) от gan на 2 юни 2009 в 02:40

В този урок за 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.

Изтегли си файла http://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.


Брой разглеждания на тази статия: 2055
(след дата 20 декември 2009)

Бутончета с връзки към сайтове, в които можете да качите линк към тази страница.
  • CenBg.com
  • Piron.bg
  • Relacia.com
  • Trohi.com
  • Uhaaa.net
  • Dao.bg
  • Zdravei.net
  • Lubimi.com
  • Web-bg.com
  • Facebook
  • Twitter
  • Buzz

Подобни статии:

  1. XHTML и заместване на тага embed Тага embed служи за вмъкване на видео или аудио файл в уеб страница, така че при зареждане на страницата мултимедийния...
  2. Заместване на тага marquee за валиден XHTML HTML тага marquee се използва за автоматично скролиране на текст. Текста поставен между тагове marquee се показва от браузъра като...
  3. Премахване на грешки в сайт и преминаване към XHTML Тази статия е за често срещани HTML грешки в сайтовете и оправянето им с помощта на HTML валидатора http://validator.w3.org  Валидаторът...
  4. Видео клип в уеб страница В тази статия ще покажа как бързо и лесно да включиш филм в уеб страница на твоя сайт. Като резултат...
  5. jQuery галерия за бързо преглеждане на снимки Представям ти един jQuery плъгин, който създава уеб интерфейс за преглеждане на снимки качени на твоя сайт. Възможностите на плъгина...
Ако тази статия е била полезна за теб може да почерпиш автора в тази страница »


Коментари
Васил Тошков на 2 юни 2009 в 12:26 #

SWFObject е нещо толкова велико, колкото и просто. Преди няколко дена продадох една банер позиция и клиентът ми изпраща банер, който да поставя. Шок! – банерът е на Flash. След 8 години уеб програмиране никога не ми се беше налагало да се занимавам и да вмъквам отричания от мен Flash.

Знаех за SWFObject и си реших проблема за 5 минути. Задаваш дестинация, размери и цвят, и си готов :)

Веселин Стефанов на 8 юни 2009 в 15:27 #

Големи благодарности!!!
Реших си проблема, най-после с валидността на кодовете, когато добавям флаш анимации в сайтовете.

Деяна Илиева на 26 януари 2010 в 18:37 #

И на мен ми се наложи да поставя flash банер и реших да изпробвам написаното тук, но се появява текста, че трябва да се ъпгрейдва флаш плейъра. Изтеглих последната версия и отново пробвах – същото. Изпробвах варианта и който е на http://code.google.com/p/swfobject/, отново само алтернативния текст се появи.
Само тук намерих подробно обяснение на български за използването на SWFObject, ако имате подозрение (или направо познание) къде може да е проблема, бихте ли помогнали с идея?

gbx на 26 януари 2010 в 19:00 #

Показания пример работи безотказно в няколко мои сайта. Съобщението, което виждаш се показва, защото флаш файла е по-нова версия спрямо инсталирания флаш плеър в твоя браузър. Съвет: винаги ползвай възможно най-ниската флаш версия, когато правиш флаш банер. В противен случай всеки, който не е обновил флаш плеъра си ще вижда такова досадно съобщение.