Как проверить, поддерживает ли браузер flash? - PullRequest
2 голосов
/ 16 июля 2010

У меня есть флэш-баннер, который я хочу заменить статическим изображением, если в браузере клиентов не включена флэш-память.

Мне было интересно, смогу ли я сделать это с помощью php - или кто-нибудь знает хороший метод

Спасибо

Ответы [ 5 ]

7 голосов
/ 16 июля 2010

Позволяет <object> (вашему Flash-ролику) ухудшаться:

<object width="640" height="480">
<param name="movie" value="yourflash.swf">
    <img src="yourimage.png">
</object>

Это будет отображать изображение, если Flash-видео тоже не может загрузиться.

5 голосов
/ 16 июля 2010

Вы можете сделать это только с помощью javascript, используя интерфейс navigator.plugins. Что-то вроде:

if(typeof navigator.plugins['Shockwave Flash']!=='undefined'){ }

Однако, гораздо более надежным решением, которое не требует javascript, было бы просто расположить ваше запасное изображение «позади» объекта вспышки, чтобы, если вспышка не включалась, изображение просвечивало. Вы можете поместить тег <img/> во флэш-память <object/> или поместить CSS-фоновое изображение на объект.

3 голосов
/ 16 июля 2010

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

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

1 голос
/ 16 июля 2010

Не думаю, что вы можете проверить с помощью PHP, вы можете сделать это с помощью JavaScript или Actionscript из SWF-файла.Вот официальный набор для обнаружения:

http://www.adobe.com/products/flashplayer/download/detection_kit/

0 голосов
/ 16 июля 2010

Вы можете использовать SWFobject

С SWFobject вы отображаете альтернативный код по умолчанию, например,

<div id="myContent">
   <p>Alternative content</p>
</div>

Затем его заменяют, где это возможно, флэш-контентом, например:

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

Он имеет зависимость от JavaScript, хотя это единственный его существенный недостаток

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