Как я могу обновить этот код - PullRequest
2 голосов
/ 07 ноября 2008
   <object height="25" width="75" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
        <param value="http://click-here-to-listen.com/players/iaPlay13.swf?x=1058286910FTRZGK" name="movie"/> 
        <param value="high" name="quality"/>
        <param value="#FFFFFF" name="bgcolor"/> 
        <param value="opaque" name="wmode"/>
        <embed height="25" width="75" wmode="opaque" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" bgcolor="#FFFFFF" quality="high" src="http://click-here-to-listen.com/players/iaPlay13.swf?x=1058286910FTRZGK"/>
    </object>

Мне нужно вставить эту устаревшую разметку в новый сайт, который я создаю. Проблема заключается в использовании тега <embed>.

Буду ли я просто покончить с <embed> и добавить какой-нибудь контент в качестве альтернативы для тех, у кого нет flash? По сути, я просто пытаюсь принести этот кусок HTML в 21-м веке.

Ответы [ 5 ]

2 голосов
/ 07 ноября 2008

Я рекомендую вам использовать swfobject , который является кроссплатформенной библиотекой с открытым исходным кодом для отображения flash на ваших страницах.

http://code.google.com/p/swfobject/

Существует множество способов загрузки флэш-памяти и альтернативного (не флэш-содержимого) содержимого. Например, следующий код может заменить ваш код:

<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
    swfobject.embedSWF("http://click-here-to-listen.com/players/iaPlay13.swf?x=1058286910FTRZGK", 
        "myContent", "25", "75", "9.0.0");
</script>
<div id="myContent">
  <p>Alternative content</p>
</div>
2 голосов
/ 07 ноября 2008

Вы можете вкладывать элементы объекта для отображения альтернатив. W3C объясняет это здесь . Я скопировал фрагмент ниже:

Одним существенным следствием дизайна элемента OBJECT является то, что он предлагает механизм для определения альтернативных объектов визуализации; каждое встроенное объявление OBJECT может указывать альтернативные типы контента. Если пользовательский агент не может отобразить самый внешний объект OBJECT, он пытается воспроизвести содержимое, которое может быть другим элементом OBJECT и т. Д.

В следующем примере мы встраиваем несколько объявлений OBJECT, чтобы проиллюстрировать, как работают альтернативные визуализации. Пользовательский агент попытается отобразить первый элемент OBJECT, который он может, в следующем порядке: (1) апплет Земли, написанный на языке Python, (2) MPEG-анимация Земли, (3) GIF-изображение Земли , (4) альтернативный текст.

<P>                 <!-- First, try the Python applet -->
<OBJECT title="The Earth as seen from space" 
    classid="http://www.observer.mars/TheEarth.py">
                <!-- Else, try the MPEG video -->
    <OBJECT data="TheEarth.mpeg" type="application/mpeg">
                <!-- Else, try the GIF image -->
      <OBJECT data="TheEarth.gif" type="image/gif">
                <!-- Else render the text -->
       The <STRONG>Earth</STRONG> as seen from space.
     </OBJECT>
   </OBJECT>
</OBJECT>
1 голос
/ 07 ноября 2008

Я нашел этот код в Интернете (с сайта для юзабилити), который обслуживает IE и другие, и использую его на своих флеш-страницах (я изменил его на ваш код):

<!--[if !IE]> -->
<object type="application/x-shockwave-flash" data="http://click-here-to-listen.com/players/iaPlay13.swf?x=1058286910FTRZGK" width="75" height="25">
<!-- <![endif]-->

<!--[if IE]>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="75" height="25">
  <param name="movie" value="http://click-here-to-listen.com/players/iaPlay13.swf?x=1058286910FTRZGK" />
<!--><!--dgx-->
  <param name="loop" value="false">
  <param name="menu" value="false">
  <param name="quality" value="high">
</object>
<!-- <![endif]-->
1 голос
/ 07 ноября 2008

По сути, вы должны продолжать вставлять, потому что это запасной вариант для некоторых старых браузеров. Это может повредить проверке страницы, но если вы знаете, почему она есть, все в порядке.

По крайней мере, так официально рекомендует Adobe: Синтаксис Macromedia Flash OBJECT и EMBED-тегов

Вы правы, что хотите сделать код для XXI века, но мы должны иметь дело с браузером из предыдущего тысячелетия ...: -)

1 голос
/ 07 ноября 2008

Я использую функцию AC_FL_RunContent для встраивания flash-объектов - это хорошо, потому что поддерживает все браузеры и рекомендуется Adobe.

Больше здесь :

Они также предлагают использовать тег вместо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...