Главная » Скрипт для вставки flash обьектов в страницу, не активируя ActiveX Control в IE

Скрипт для вставки flash обьектов в страницу, не активируя ActiveX Control в IE

ActiveX ContentС некоторых пор в компании Microsoft решили что нельзя вот так сразу давать юзерам возможность видеть и работать с флэш-обьектами на странице. Security reasons, понимаете ли. И когда в IE открывается страница со встроеным флэшем, то он не отрабатывает как положено пока по нему не кликнешь пару раз.

Все бы ничего, если бы не две вещи. Во-первых анимация не играет и появляется рамочка вокруг обьекта, а во-вторых естественно функционал. То есть если у меня есть анимированый баннер на флэше или (не дай Бог) меню на флэше, то сие есть проблема.

Об этом уже много писалось, но из-за того что в сети полно некачественно написаных скриптов, которые это дело “исправляют” так хорошо, что Эксплорер просто умирает (правильно, нет сайта - нет проблемы :) ), я решил написать о лучшем способе исправления этого мелкомягкого самоуправства. А именно.

Adobe выпустила оффициальный скрипт, решающий эту проблему. Этот скрипт не глючит и я его активно использую. Чего и вам желаю. Итак:

Скачиваем два .js файлика - отсюда. Файлы выложил у себя, ибо в адобовском комплекте вместе с ними скачивается еще куча всего не нужного. Если вы боитесь (хе-хе) что я выложил что-либо вредоносное, то можете скачать все это с сайта Adobe.

Вы спросите почему два файла? Потому что один обрабатывает все аргументы для тэга object, а второй ответственый за вывод ActiveX контента на страницу.
Теперь смотрим что нам надо написать в теле страницы:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />
<title>Untitled Document</title>
<script srс=”Scripts/AC_RunActiveContent.js” type=”text/javascript”></script>
<script srс=”Scripts/AC_ActiveX.js” type=”text/javascript”></script>
</head>
<body>
<script type=”text/javascript”>
AC_FL_RunContent( ‘codebase’,'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0′, ‘width’,'100′,’height’,'22′,’src’,'button1′,’quality’,'high’, ‘pluginspage’,'http://www.macromedia.com/go/getflashplayer’,'movie’,'button1′ ); //end AC code
</script><noscript><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=”100″ height=”22″>
<param name=”movie” value=”button1.swf” />
<param name=”quality” value=”high” />
<embed srс=”button1.swf” quality=”high” pluginspage=”http://www.macromedia.com/go/getflashplayer” type=”application/x-shockwave-flash” width=”100″ height=”22″></embed>
</object></noscript>
</body>
</html>

В данном случае button1, это название файла .swf, обратите внимание на то что в некоторых местах он прописывается без расширения и путь к нему будет выглядеть не так, если он не находится в одной папке со страницей.

Все параметры меняются на необходимые, такие как высота и ширина обьекта, качество, версия плэера и тд. В принципе ничего сложного.

*Не забудьте указать верный путь к .js файлам в заголовке.

Если я чего-нибудь намудрил или просто не понятно написал то пишите в комментах - исправлю :)

Оригинал на английском языке здесь.



12 Комментариев »

  1. 1  Плюс Минус  +1

    Мне больше подошёл вот такой способ (Читать всё под “Flash” до конца):
    http://topixoft.googlepages.com/development

    говорят что проходит валидацию, хотя не очень хорошо принимается редакторами и т.д. из-за “

    Комментарий by m_vitaly — Декабрь 24, 2006 @ 9:27 am | Цитировать

  2. 2  Плюс Минус  0

    m_vitaly

    Есть много разных скриптов, реализующих это. Проблема в том что многие из них ведут себя не корректно в тех или иных ситуациях. На пример при вставке 3-4 роликов одновременно вдруг умирает IE…
    Намучавшись я решил что лучше использовать скрипт от разработчиков флэша.

    Комментарий by neutrino — Декабрь 24, 2006 @ 9:32 am | Цитировать

  3. 3  Плюс Минус  0

    А кавычки, какие хотим, те и ставим….

    Комментарий by GND — Июль 29, 2007 @ 12:46 pm | Цитировать

  4. 4  Плюс Минус  0

    to GND

    Кавычки это глюк Wordpress’a. Выдает SQL ошибку с плагином “Related News”

    Комментарий by neutrino — Июль 30, 2007 @ 5:11 pm | Цитировать

  5. 5  Плюс Минус  0

    А вот кто мне подскажет чайнику как отобразить в данном случае картинку если флеш не установлен

    Комментарий by eros — Август 21, 2007 @ 4:57 pm | Цитировать

  6. 6  Плюс Минус  0

    А вот кто мне подскажет чайнику как отобразить в данном случае картинку если флеш не установлен

    В noscript вставить код <img src=…

    Комментарий by neutrino — Август 21, 2007 @ 5:20 pm | Цитировать

  7. 7  Плюс Минус  0

    eros

    Посмотрите еще здесь

    Комментарий by neutrino — Август 21, 2007 @ 5:22 pm | Цитировать

  8. 8  Плюс Минус  0

    тогда еще вопрос - а как сделать так что при условии, что java script работатет, но не установлен flash - выводилась картинка вместо флешки

    Комментарий by eros — Август 22, 2007 @ 10:21 am | Цитировать

  9. 9  Плюс Минус  0

    тогда еще вопрос - а как сделать так что при условии, что java script работатет, но не установлен flash - выводилась картинка вместо флешки

    Если использовать вот этот способ, то нужно вписать кодом картинку в переменную alternate content.

    Комментарий by neutrino — Август 22, 2007 @ 10:23 am | Цитировать

  10. 10  Плюс Минус  0

    огромное спасибо за совет - все получилось

    Комментарий by eros — Август 23, 2007 @ 1:09 pm | Цитировать

  11. 11  Плюс Минус  0

    огромное спасибо за совет - все получилось

    Вот и чудесно :)

    Комментарий by neutrino — Август 23, 2007 @ 1:11 pm | Цитировать

  12. 12  Плюс Минус  0

    С флэшем понятно, кто бы подсказал, как это сделать и с wmv файлами, что касается “Эксплорера”. А “Фиерфокс” просто их не показывает. В чём может быть дело?

    Комментарий by Павел — Март 31, 2008 @ 6:55 pm | Цитировать

Оставить комментарий

XHTML (Разрешенные теги): <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong> .

Если вы хотите вставить в комментарий код, то жмите на кнопку "HTML" в редакторе и используйте теги <pre><code> и </pre></code> для вставки.

Не забывайте о том, что теги, вставленые без использования &lt;/&gt; будут автоматически трансформироваться.

Цитировать отмеченый текст