Форум / Рецепты / Проверка наличия Flash и HTML5
Пример для проверки браузера на стороне клиента и показа ему версии HTML5 для мобильных платформ (IOS, Android), либо Flash.
Если флеш не установлен, можно показать просьбу установить
<div id="videoplayer"></div>
<script type="text/javascript">
   var ua = navigator.userAgent.toLowerCase();
   var flashInstalled = false;
   if (typeof(navigator.plugins)!="undefined"&&typeof(navigator.plugins["Shockwave Flash"])=="object"){
      flashInstalled = true;
   } else if (typeof window.ActiveXObject != "undefined") {
      try {
         if (new ActiveXObject("ShockwaveFlash.ShockwaveFlash")) {
            flashInstalled = true;
         }
      } catch(e) {};
   };
   if(ua.indexOf("iphone") != -1 || ua.indexOf("ipad") != -1 || ua.indexOf("android") != -1 || ua.indexOf("windows phone") != -1 || ua.indexOf("blackberry") != -1){
      //код HTML5
   }else{
      if(!flashInstalled){
         //просим установить Flash
         document.getElementById("videoplayer").innerHTML="<a href=http://www.adobe.com/go/getflashplayer>Требуется обновить Flash-плеер</a>";
      }else{
         //код Flash (SWFObject)
      }
   }</script>

Пример ссылка
uppodСсылка на пост (Смотрели 62709)29.10.11 16:57     Ответить
Ваше имя*
 E-mail* (не публикуется)
 
 
Если пишете о проблеме, то приложите, пожалуйста, ссылку на свой плеер отсюда — Плеер: Файл > Код > Ссылка
Вставка кода — [code][/code] дублировать ответы на e-mail
1
SDelfin 23.11.11 - 03:53
А можно пример?
2
SAYATT 17.12.11 - 01:20
нельзя
3
DAVpro 09.01.12 - 23:37
не работает
4
ochepyatki 30.03.12 - 03:36
Работает, нужно удалить комментарии из кода.
5
aliveviolin 15.05.12 - 03:17
Какие именно?
У меня тоже не работает…
6
ochepyatki 28.05.12 - 13:06
Комментарии в коде плеера, это строки с двойным слэшем // и последующим текстом
7
kostar 27.05.12 - 22:49
есть ссылка? поделись ! :)
8
support 31.05.12 - 03:19
Сделали пример
9
kostar 28.05.12 - 01:42
Пример. ссылка

Нужно заменять div id="videoplayer" на свои ID. Код JS нужно делить и вставлять где надо. Вот такой пример.

Команда uppod, сделайте уже подробное описание внедрения!
10
kostar 28.05.12 - 01:43
"uid":"audioplayer####" тоже менять на свой надо
11
aliveviolin 28.05.12 - 15:43
У меня вопрос — почему бы не сделать это добавление к коду по умолчанию?
Это было бы логично и избавило бы множество людей от проблем.
12
Alv 01.07.12 - 18:20
Вообще было бы конечно хорошо если бы добавили сразу.
13
floor12 30.07.12 - 02:18
Я никак что-то не пойму. Для корректной работы и во флеш и в режиме хтмл5 (для гаджетов в основном), необходимо в обязательном порядке делать такую проверку и выбирать какую версию подгружать. А нельзя сделать это изначально автоматически? Я вот аудио-плеер прикручивал к одному своему проекту (128kbps.ru), там управление воспроизведением полностью на яваскриптовом апи. В итоге оказалось, что работает и с флешем и с хтмл5, само определяется и работает. А тут нельзя сделать что-либо аналогичное? Непонятно…
14
NathalyFox 12.10.12 - 15:47
Всё, если у меня — чайника из чайников заработало, значит и у вас заработает. Если что, вот пример (сайт тестовый, поэтому вы там на контент не смотрите): ссылка Да, и проживет он там только до конца октября 2012.
15
NathalyFox 12.10.12 - 16:07
Ой, ссылка не работает моя. Щас: ссылка
16
werefox 26.11.12 - 00:35
не работает ссылка..
17
NathalyFox 26.11.12 - 13:41
Так уже не работает, конечно. Я ж писала — до конца октября там будет сайт. Если коротко, то скрипт правильный (который наверху) проблемы, которые появлялись были в том, что работает этот скрипт только с самыми простыми стилями. Подбирайте стили для плеера и все получится.
18
stainer 31.12.12 - 03:25
Благодарю! Очень выручили.
19
valueff 17.02.13 - 14:00
Здравствуйте. Подскажите пожалуйста, можно ли такую проверку вставить в форум phpbb3? В виде Bbcode? Мне нужно не для пользователей, а для админа. Заранее благодарен.
20
erocel 08.05.13 - 03:41
Как это добавить в WordPress?
21
nirlog 14.05.13 - 20:39
Ребят, помогите запихать это в плагин для wordpress, ссылка

<?php
/*
Plugin Name: Uppod
Plugin URI: http://uppod.ru/help/q=wordpress
Author: Uppod
Description: Медиаплеер Uppod
Author URI: http://uppod.ru
Version: 1.6
*/

// SETTINGS
$uppod_settings['uppod.swf']='/vidp/uppod.swf';
$uppod_settings['swfobject.js']='/vidp/swfobject/swfobject.js';
$uppod_settings['adobe_update']='Необходимо обновить <a href="http://get.adobe.com/flashplayer/" target="_blank">Adobe Flash Player</a>';
$uppod_settings['wmode']='';
$uppod_settings['bgcolor']='#ffffff';
$uppod_settings['uid']=1;

//VIDEO
$uppod['video']['style']='/vid/video155-xxxx.txt';
$uppod['video']['width']='640';
$uppod['video']['height']='360';

$uppod['video']['style2']='';
$uppod['video']['width2']='400';
$uppod['video']['height2']='300';

//AUDIO
$uppod['audio']['style']='';
$uppod['audio']['width']='300';
$uppod['audio']['height']='90';

//PHOTO
$uppod['photo']['style']='';
$uppod['photo']['width']='400';
$uppod['photo']['height']='300';

function Uppod($atts, $content = null){
global $uppod;
global $uppod_settings;
$o='';
$fv='';
$style='';
$center=false;
if($atts['video']){
$m='video';
}
if($atts['audio']){
$m='audio';
}
if($atts['photo']){
$m='photo';
}
if($atts['align']){
$atts['align']=='left'?$style='float:left;':'';
$atts['align']=='right'?$style='float:right;':'';
$atts['align']=='center'?$center=true:'';
}
if($atts['margin']){
$style.='margin:'.$atts['margin'].'px;';
}
$atts['type']?$t=$atts['type']:$t='';
foreach($atts as $k => $value) {
$k!=$m&&$k!='align'&&$k!='margin'?$fv.=',"'.$k.'":"'.$value.'"':'';
}

$num=rand(0,1000);
if(isset($m)){
strpos($atts[$m],',')===false?(strpos($atts[$m],'.txt')==strlen($atts[$m])-4?$fv.=',"pl":"'.$atts[$m].'"':$fv.=',"file":"'.$atts[$m].'"'):$fv.=',"pl":"'.Uppod_Pl($atts[$m]).'"';
if($uppod_settings['uppod.swf']=='http://'|$uppod_settings['uppod.swf']==''){
$o='Ошибка: в настройках плагина Uppod не указана ссылка на плеер (<a href="http://uppod.ru/help/q=wordpress">подробнее</a>)';
}else{
$o=($center?'<center>':'').'<div id="'.$m.'player'.$num.'" '.($style!=''?'style="'.$style.'"':'').'>'.$uppod_settings['adobe_update'].'</div>'.($center?'</center>':'').'<script type="text/javascript">var flashvars = {'.($uppod[$m]['style'.$t]!=''?'"st":"'.$uppod[$m]['style'.$t].'"':'"m":"'.$m.'"').$fv.($uppod_settings['uid']==1?',"uid":"'.$m.'player'.$num.'"':'').'};var params = {allowFullScreen:"true", allowScriptAccess:"always",id:"'.$m.'player'.$num.'",bgcolor:"'.$uppod_settings['bgcolor'].'"'.($uppod_settings['wmode']!=''?',"wmode":"'.$uppod_settings['wmode'].'"':'').'}; new swfobject.embedSWF("'.$uppod_settings['uppod.swf'].'", "'.$m.'player'.$num.'", "'.$uppod[$m]['width'.$t].'", "'.$uppod[$m]['height'.$t].'", "10.0.0.0", false, flashvars, params);</script>';
}
}
return $o;
}
function Uppod_SWFObject() {
global $uppod_settings;
echo '<script src="'.$uppod_settings['swfobject.js'].'" type="text/javascript"></script>';
}
function Uppod_Pl($str) {
$pl="{'playlist':[";
$obj=split(',',$str);
for($i=0;$i<count($obj);$i++){
$pl.="{'file':'".$obj[$i]."'},";
}
return chop($pl,',')."]}";
}
add_action('wp_head', 'Uppod_SWFObject');
add_shortcode('uppod', 'Uppod')
?>
22
ottofonbraun 04.07.13 - 23:32
А здесь платные услуги?
23
jurassik 02.10.13 - 09:27
а почему html5 версия показывается только для IOS, Android?
все современные браузеры поддерживают html5.
как проверить поддержку именно этих стандартов??
24
4duk 26.11.13 - 14:09
25
Feniks000 27.01.14 - 02:59
Ребят, я сделал как админ указал и ничего не получилось :(

скрипт кинул в подключенный .js
26
dengger 21.02.14 - 04:34
сделал все как нужно. но на компе так и не появляется плеер. но вот на телефоне прекрасно работает в чем дело. делаю вот так

<center>
<div id="videoplayerХХХ" style="width:620px;height:420px;" ></div>
</center>
<script type="text/javascript">

var ua = navigator.userAgent.toLowerCase();
var flashInstalled = false;
if (typeof(navigator.plugins)!="undefined" && typeof(navigator.plugins["Shockwave Flash"])=="object") {
flashInstalled = true;
} else if (typeof window.ActiveXObject != "undefined") {
try {
if (new ActiveXObject("ShockwaveFlash.ShockwaveFlash")) {
flashInstalled = true;
}
} catch(e) {};
};

if(ua.indexOf("iphone") != -1 || ua.indexOf("ipad") != -1 || (ua.indexOf("android") != -1 && !flashInstalled)){


this.videoplayerХХХ = new Uppod({m:"video",uid:"videoplayerХХХ",comment:"пример 2",file:"ССЫЛКА НА ВИДЕО",st:"uppodvideo"});

}else{
if(!flashInstalled){

document.getElementById("videoplayerХХХ").innerHTML="<a href=http://www.adobe.com/go/getflashplayer>Требуется установить Flash-плеер</a>";

}else{


var flashvars = {"uid":"videoplayerХХХ","comment":"пример 2","st":"ПУТЬ К СТИЛЮ.txt","file":"ССЫЛКА НА ВИДЕО"};var params = {bgcolor:"#ffffff", allowFullScreen:"true", allowScriptAccess:"always",id:"videoplayerХХХ"}; new swfobject.embedSWF("http://ХХХ/uppod.swf", "videoplayerХХХ", "620", "420", "9.0.115.0", false, flashvars, params);
}
}
</script>
27
dengger 21.02.14 - 04:38
вопрос решен
28
ZAVcom 13.03.14 - 16:14
подскажите, каким образом, решили проблему.
29
podshib 01.07.14 - 19:37
Отлично! Как решен — не важно!
30
ramazi 27.06.15 - 11:48
что ты сделал для исправления кода?
31
dengger 21.02.14 - 17:22
как сделать что бы срабатывало к примеру на нокии люмиа. и на иксбокс
32
TheTolik32 07.04.14 - 21:04
как сделать чтоб ютюб отображался здесь ??
33
TheTolik32 07.04.14 - 21:06
но не в плеере уппод html 5 а в своем iframe
34
KIJIJIER 06.05.14 - 11:36
Положите кто нибудь правильное решение сюда, а то всё какие то догадки и неработающие ссылки с примерами.
Я попробовал вставить в тот код, что дал автор, два плеера, но на сайте появилось тоже 2 плеера и в JS выскачила ошибка.
35
KIJIJIER 06.05.14 - 12:17
не заметил ссылки [url=ссылка]пример[/url] , скопировал исходник к себе и переделал немного данные плееров. Всё заработало!
36
podshib 01.07.14 - 02:51
"… и переделал немного данные плееров. Всё заработало!"
Очень ценный пост. Примите мои искренние поздравления! Пойду и себе немного переделаю данные, а то не пашет.
37
Vijit 12.05.14 - 20:43
Ну вы даете! Сначала приводите в нижний регистр значение userAgent, а потом ищите в нем "Windows Phone", написанное в двух регистрах.. М-да, с этим примером у вас явно проблемы.
38
podshib 01.07.14 - 03:03
У меня во всех настольных браузерах поддерживающих HTML5 пишет "Требуется установить Flash-плеер".
Код взял ссылка
Кто-нибудь может привести пример кода, чтоб все работало? Пожалуйста.
39
genaborobec 02.09.14 - 03:12
Уважаемая поддержка, подскажите что требуется добавить в эту строчку: if(ua.indexOf("iphone") != -1 || ua.indexOf("ipad") != -1 || (ua.indexOf("android") != -1 || (ua.indexOf("WebOS") || (ua.indexOf("Apple") != -1 || (ua.indexOf("SmartTV") != -1 || (ua.indexOf("Chrome") != -1 || (ua.indexOf("Safari") != -1

для активации html5 плеера на SmartTv LG — добавил все что было в useragent
40
sychy 17.02.16 - 21:51
if(ua.indexOf("iphone") != -1 || ua.indexOf("smarttv") != -1 || (ua.indexOf("ipad") != -1 || ua.indexOf("android") != -1 || ua.indexOf("windows phone") != -1 && !flashInstalled)){

Вот такое прописать. А подскажите почему не работает плейлист от ютуба в HTML5 плеере? Флеш работает, а припереходе на андроиде — не работает — ошибку выдает в окошке
41
werpin 25.01.15 - 22:36
столкнулся с аналогичной проблемой — пример в заголовке темы на компах работает хорошо, в мобильных устройствах ios,wp,adroid — не отображается сам плеер, хотя место под контейнер пустует. ссылки на видео шифруются, файлы видео кодировал в mp4 H264

Уважаемые разработчики, прошу оказать содействие, поскольку ваш плеер мне нравится и приобрел PRO версию
42
werpin 26.01.15 - 14:44
все оказалось просто — забыл указать в хэде подключение стилей для хтмл5 плеера
<script type="text/javascript" src="</script>" rel="nofollow">ссылка
43
ramazi 26.06.15 - 15:14
кто нибудь напишите рабочий код для ucoz
вот мой код
<center>
<div id="videoplayer12794” style="width:600px;height:475px;" ></div>
</center>
<script type="text/javascript">

var ua = navigator.userAgent.toLowerCase();
var flashInstalled = false;
if (typeof(navigator.plugins)!="undefined" && typeof(navigator.plugins["Shockwave Flash"])=="object") {
flashInstalled = true;
} else if (typeof window.ActiveXObject != "undefined") {
try {
if (new ActiveXObject("ShockwaveFlash.ShockwaveFlash")) {
flashInstalled = true;
}
} catch(e) {};
};

if(ua.indexOf("iphone") != -1 || ua.indexOf("ipad") != -1 || (ua.indexOf("android") != -1 && !flashInstalled)){


this.videoplayer12794 = new Uppod({m:"video",uid:"videoplayer12794”,comment:”$ENTRY_NAME$”,file:”$OTHER2$”,poster:”$OTHER1$”,st:"uppodvideo"});

}else{
if(!flashInstalled){

document.getElementById("videoplayer12794”).innerHTML="<a href=http://www.adobe.com/go/getflashplayer>Требуется установить Flash-плеер</a>";

}else{


var flashvars = {"uid":"videoplayer12794”,”comment”:”$ENTRY_NAME$”,”st”:”/player/styles/video12794.txt","file”:”$OTHER2$”,”poster”:”$OTHER1$”};var params = {bgcolor:"#ffffff", allowFullScreen:"true", allowScriptAccess:"always",id:"videoplayerХ12794”}; new swfobject.embedSWF(“/player/player/uppod.swf", "videoplayer12794”, "600”, "475”, "9.0.115.0", false, flashvars, params);
}
}
</script>

я не могу понять почему не работает, ,все скрипты <head></head> прописаны
44
ramazi 27.06.15 - 11:43
Помогите пожалуйста :)
45
Desserro 11.08.15 - 17:07
Кто смог интегрировать в юкоз. Дайте пример пожалуста!!!!
46
sychy 17.02.16 - 21:53
А подскажите почему не работает плейлист от ютуба в HTML5 плеере? Флеш работает, а припереходе на андроиде — не работает — ошибку выдает в окошке
47
victorsmail 19.02.16 - 13:12
тоже не понимаю, почему разработчики плеера не сделают до сих пор встроенную внятную функцию для определения есть ли флэш у юзера.
перерыл много вариантов, остановился на как мне кажется самом простом. зачем нам проверять какой девайс или какой браузер у пользователя? сегодня 99% мобильных девайсов поддерживают HTML5, а если это комп, то 99% что он поддерживает флэш.
поэтому пробуем запустить сначала флэш плеер, если не получилось, то запускаем html5 плеер:


// функция выполняется после попытки embedSWF.
function callbackFn(e) {
// если неудачно, то запускаем html5
if (!e.success) new Uppod({m:"audio",uid:"track"+i+"Player",file:"getfile.php?target="+song_id,st:"uppodaudio7",auto:"play"});
}
new swfobject.embedSWF("player/uppod.swf", "track"+i+"Player", "300", "24", "10.0.0", false, flashvars, params, att, callbackFn);
48
jsmorton 22.10.16 - 23:37
Проверил пример, который в шапке. У меня в Internet Explorer он не заработал. Тестировал на IE8, ну и IE7–6 тоже самое. Пишет ошибка на странице — "swfobject" — определение отсутствует. Строчка с new swfobject.embedSWF….
49
steller 23.10.16 - 19:19
victorsmail писал: "…поэтому пробуем запустить сначала флэш плеер, если не получилось, то запускаем html5 плеер…"
По моему, настали времена когда надо делать наоборот : нет HTML — пробуем Flash .
50
zabaka 28.04.17 - 22:29
вы дурак
Сообщить об ошибке на сайте
 Uppod © 2008–2020
Сообщить об ошибке на сайте
Если ошибка относится к плееру, а не сайту, либо Вы хотите получить ответ на вопрос —
лучше написать на форуме