Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Как определить наличие flash-плагина
Flash Zone Forum > Macromedia Flash > Общие вопросы
ВикторСветлов
Извините, не нашел соответствующей темы.

Вопрос висит по всему инету. Каждый делает абы как.

Пробовал вариант скомпилить на флеше соотв. версии маленький редиректор. Тестировал на чистой машине с XP. Система вообще не знает что такое swf (вообще не зает чем открыть) и интернета в ней нет.

Так вот. До команды
<meta http-equiv="Refresh" CONTENT="7;url=content_nf/index.html">
эксплорер так и не доходит. Висит и что-то пытается сделать с флешем, который ей вообще неизвестен.

Разумеется, пробовал делать только
<object>
<embed src="swf/flash_checker.swf"/>
</object>

Не помогает.

Где можно увидеть реально работающее решение?

Спасибо.

---------------------------
вот чем я руководствовался:
http://zona5.al.ru/lessons/tips/detect%20f...20flash%205.htm
ВикторСветлов
В общем, у меня получилось.
Надо залезть на сайт macromedia.com. Там в поиске найти flash detection kit.
На клиенте он работает через скрипты, а в отдельных броузерах - через VBScript. Определяет наличие любой версии плагина или его отсутствие. В случае запрета выполнения скриптов предлагается пользователю решать самому.

В этом detection kit есть еще варианты определения средствами сервера или самого флеш-контента, но мне это было неинтересно.

Если кому будет интересно, пришлю на сайт статью с листингом html, в котором определяется версия и производятся соответствующие редиректы.
MustLive
Цитата(ВикторСветлов @ 8.04.2006 - 21:02)
Вопрос висит по всему инету. Каждый делает абы как.

Пробовал вариант скомпилить на флеше соотв. версии маленький редиректор. Тестировал на чистой машине с XP. Система вообще не знает что такое swf (вообще не зает чем открыть) и интернета в ней нет.

Так вот. До команды
<meta http-equiv="Refresh" CONTENT="7;url=content_nf/index.html">
эксплорер так и не доходит. Висит и что-то пытается сделать с флешем, который ей вообще неизвестен.

Разумеется, пробовал делать только
<object>
<embed src="swf/flash_checker.swf"/>
</object>

Не помогает.

Где можно увидеть реально работающее решение?

ВикторСветлов

Ещё с 1999 года, как я только начал заниматься флешем, и сделал для своего сайта флешевое меню (вначале было сделал версии - хтмл и флеш, но в итоге привёл к одной, комбинированной, где на флеше лишь меню) - я использую один метод. Чтобы проверять на наличие флеш плагига.

http://mlbpg.narod.ru

Этот метод основан на рекомендации Макромедии (тогда ещё для 4го флеша). Сейчас Макромедия (теперь Адоб), для новых версий флеша, может использовать другие, более изощрённые методы, но код, который я применяю, себя неплохо зарекомендовал и был проверен временем.

В теге body пишем:
HTML
onLoad="MM_checkPlugin('Shockwave Flash','flash.htm','news.htm',true);return document.MM_returnValue"

В хеде пишем скрипт:
HTML
<script language="JavaScript">
<!--
function MM_checkPlugin(plgIn, theURL, altURL, autoGo) {
var ok=false; document.MM_returnValue = false;
with (navigator) if (appName.indexOf('Microsoft')==-1) ok=(plugins && plugins[plgIn]);
else if (appVersion.indexOf('3.1')==-1) { //not Netscape or Win3.1
if (plgIn.indexOf("Flash")!=-1 && window.MM_flash!=null) ok=window.MM_flash;
else if (plgIn.indexOf("Director")!=-1 && window.MM_dir!=null) ok=window.MM_dir;
else ok=autoGo; }
if (!ok) theURL=altURL; if (theURL) window.location=theURL;
}
//-->
</script>

На случай если у посетителя не работает ява-скрипт (отключен или отсутствует вовсе), я применил следующий приём (в хеде):
HTML
<meta http-equiv="refresh" content="25;url=flash.htm">
MustLive
Цитата(ВикторСветлов @ 8.04.2006 - 21:02)
Тестировал на чистой машине с XP. Система вообще не знает что такое swf (вообще не зает чем открыть) и интернета в ней нет.

В стандартной Вин XP поставляется флеш плагин 6й версии. Так что флеш можно играть. То что не стоит флеш плеер стационарный, и поэтому нельзя открыть swf - это ещё ничего не значит wink.gif, просто нужно открывать флешки в окне браузера - ведь с системой поставляется плагин к браузеру.

Цитата
вот чем я руководствовался:
http://zona5.al.ru/lessons/tips/detect%20f...20flash%205.htm

Тоже вполне неплохой вариант. Вполне рабочий, хотя и более напряжный и не такой удобный, как в случае с упомянутым мною ява-скриптом.

То что у вас не работает этот пример, то это или глюк (это может быть связано с кривым флешем) или meta http-equiv="Refresh" указан неправильно (раз не редиректит).

Цитата
В общем, у меня получилось.
Надо залезть на сайт macromedia.com. Там в поиске найти flash detection kit.

Тоже вариант smile.gif.
MerliX
MustLive dry.gif И все-таки давай не будем писать Ява. Дело вовсе не в том, как и чем это переводится, но есть люди, которых это бесит, а есть те, которым это безразлично. Третих я не разу не видел (разве что ты?). Мне кажется, что переключить раскладку на клаве не трудно, да и текст становится более читабельным. Я не хочу ссорится, но об этом тебя попрошу.
И давай без цитат. smile.gif
Удачи! wink.gif
Русская версия IP.Board © 2001-2008 IPS, Inc.