С некоторых пор в компании 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 файлам в заголовке.
Если я чего-нибудь намудрил или просто не понятно написал то пишите в комментах – исправлю :)
Оригинал на английском языке здесь.
Мне больше подошёл вот такой способ (Читать всё под “Flash” до конца):
http://topixoft.googlepages.com/development
говорят что проходит валидацию, хотя не очень хорошо принимается редакторами и т.д. из-за “ “
m_vitaly
Есть много разных скриптов, реализующих это. Проблема в том что многие из них ведут себя не корректно в тех или иных ситуациях. На пример при вставке 3-4 роликов одновременно вдруг умирает IE…
Намучавшись я решил что лучше использовать скрипт от разработчиков флэша.
А кавычки, какие хотим, те и ставим….
to GND
Кавычки это глюк Wordpress’a. Выдает SQL ошибку с плагином “Related News”
А вот кто мне подскажет чайнику как отобразить в данном случае картинку если флеш не установлен
[quote comment="884"]А вот кто мне подскажет чайнику как отобразить в данном случае картинку если флеш не установлен[/quote]
В noscript вставить код <img src=…
eros
Посмотрите еще здесь
тогда еще вопрос – а как сделать так что при условии, что java script работатет, но не установлен flash – выводилась картинка вместо флешки
[quote comment="895"]тогда еще вопрос – а как сделать так что при условии, что java script работатет, но не установлен flash – выводилась картинка вместо флешки[/quote]
Если использовать вот этот способ, то нужно вписать кодом картинку в переменную alternate content.
огромное спасибо за совет – все получилось
[quote comment="904"]огромное спасибо за совет – все получилось[/quote]
Вот и чудесно :)
С флэшем понятно, кто бы подсказал, как это сделать и с wmv файлами, что касается “Эксплорера”. А “Фиерфокс” просто их не показывает. В чём может быть дело?
Вообще-то Flash сам этот файл генерит…
Так что уже НЕАКТУАЛЬНО)))