Как встроить SWF-файл в HTML-страницу? - PullRequest
173 голосов
/ 26 сентября 2008

Как встроить SWF-файл в HTML-страницу?

Ответы [ 14 ]

172 голосов
/ 26 сентября 2008

Лучший подход для встраивания SWF-файла в HTML-страницу заключается в использовании SWFObject .

Это простая библиотека JavaScript с открытым исходным кодом, которая является простым в использовании и стандартизированным методом для вставки Flash-содержимого.

Он также предлагает определение версии Flash Player. Если у пользователя нет требуемой версии Flash или JavaScript отключен, он увидит альтернативный контент. Вы также можете использовать эту библиотеку для запуска обновления Flash Player. Как только пользователь обновится, он будет перенаправлен обратно на страницу.

Пример из документации:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  <head>
    <title>SWFObject dynamic embed - step 3</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <script type="text/javascript" src="swfobject.js"></script>

    <script type="text/javascript">
        swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0");
    </script>

  </head>
  <body>
    <div id="myContent">
      <p>Alternative content</p>
    </div>
  </body>
</html>

Хороший инструмент для использования вместе с этим - SWFObject HTML и JavaScript генератор . Он в основном генерирует HTML и JavaScript, которые вам нужны для встраивания Flash, используя SWFObject. Поставляется с очень простым пользовательским интерфейсом для ввода параметров.

Настоятельно рекомендуется и очень прост в использовании.

124 голосов
/ 26 сентября 2008
<object width="100" height="100">
    <param name="movie" value="file.swf">
    <embed src="file.swf" width="100" height="100">
    </embed>
</object>
13 голосов
/ 23 мая 2015

Как насчет простого встраивания тега HTML5?

<!DOCTYPE html>
<html>
<body>

<embed src="anim.swf">

</body>
</html>
12 голосов
/ 11 октября 2012

Подходит для приложений из корневой среды.

<object type="application/x-shockwave-flash" data="/dir/application.swf" 
id="applicationID" style="margin:0 10px;width:auto;height:auto;">

<param name="movie" value="/dir/application.swf" />
<param name="wmode" value="transparent" /> <!-- Or opaque, etc. -->

<!-- ↓ Required paramter or not, depends on application -->
<param name="FlashVars" value="" />

<param name="quality" value="high" />
<param name="menu" value="false" />

</object>

Должны быть добавлены / могут быть добавлены дополнительные параметры, которые зависят от самого себя. Нет встраивания , просто объект и параметры внутри, так что он остается действительным, работает и может использоваться везде, не имеет значения, какой! DOCTYPE это все о. :)

8 голосов
/ 11 октября 2012
<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/VhtIydTmOVU&amp;hl=en&amp;fs=1&amp;color1=0xe1600f&amp;color2=0xfebd01" 
style="width:640px;height:480px;margin:10px 36px;">

<param name="movie" value="http://www.youtube.com/v/VhtIydTmOVU&amp;hl=en&amp;fs=1&amp;color1=0xe1600f&amp;color2=0xfebd01" />
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="wmode" value="opaque" />
<param name="quality" value="high" />
<param name="menu" value="false" />

</object>
7 голосов
/ 27 сентября 2008

Если вы используете одну из этих библиотек js для вставки Flash, я предлагаю добавить тег вставки простого объекта внутри <noscript/>.

2 голосов
/ 25 июля 2015

Это будет работать, я уверен!

<embed src="application.swf" quality="high" pluginspage="http://www.macromedia.com/go/getfashplayer" type="application/x-shockwave-flash" width="690" height="430">
2 голосов
/ 26 сентября 2008

Как уже упоминалось, объект SWF великолепен. НЛО тоже стоит посмотреть

2 голосов
/ 26 сентября 2008

Я использую http://wiltgen.net/objecty/,, это помогает встраивать медиаконтент и позволяет избежать проблемы IE "click to активировать".

1 голос
/ 21 февраля 2018

Я знаю, что это старый вопрос. Но этот ответ пока будет хорошим.

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>histo2</title>
        <style type="text/css" media="screen">
        html, body { height:100%; background-color: #ffff99;}
        body { margin:0; padding:0; overflow:hidden; }
        #flashContent { width:100%; height:100%; }
        </style>
    </head>
    <body>
        <div id="flashContent">
            <object type="application/x-shockwave-flash" data="histo2.swf" width="822" height="550" id="histo2" style="float: none; vertical-align:middle">
                <param name="movie" value="histo2.swf" />
                <param name="quality" value="high" />
                <param name="bgcolor" value="#ffff99" />
                <param name="play" value="true" />
                <param name="loop" value="true" />
                <param name="wmode" value="window" />
                <param name="scale" value="showall" />
                <param name="menu" value="true" />
                <param name="devicefont" value="false" />
                <param name="salign" value="" />
                <param name="allowScriptAccess" value="sameDomain" />
                <a href="http://www.adobe.com/go/getflash">
                    <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
                </a>
            </object>
        </div>
    </body>
</html>
...