2012-08-19 53 views
3

有没有可能只有在特定设备上可见的div标签?div只显示在android

我们有一个视频页面,有HTML5后备上桌面和iOS设备,但没有在Android上(特别是三星S3)

我做了一些研究和可能的原因起着远远落后于它是.m3u8不完全支持在Android和RTSP有更多的成功报告。

我想在我们的视频嵌入代码下放一个div标签,它只会显示在android设备上。

喜欢的东西...

<div id="androids"><a href="rtsp_url">Android user please click here to watch video</a></div> 

这可能吗?

顺便说一句。我在我的页面上使用JW播放器。

感谢

+1

要回答你的问题,这可能吗?是。使用JavaScript来检测设备,并基于该显示/隐藏视频并显示/隐藏android的div。 – Luis 2012-08-19 16:15:11

回答

2

试试这个:

HTML:

<div id="video"></div> 

的JavaScript:

var ua = navigator.userAgent.toLowerCase(); 
var isAndroid = ua.indexOf('android') > -1; 

var videoDiv = document.getElementById('video'); 

if(isAndroid) { 
    videoDiv.innerHTML = '<a href="rtsp_url">Android user please click here to watch video</a>'; 
} else { 
    //add something else 
    videoDiv.innerHTML = '<video>This is HTML 5 video for non-Android users</video>'; 
} 

解释:JavaScript会发现用户是否使用Android。如果用户使用Android,则它将<a href="rtsp_url">Android user please click here to watch video</a>添加到<div id="video">,如果不是,则添加常规HTML 5 <video>标记。

注:而不是<video>This is HTML 5 video for non-Android users</video>添加视频代码。

+0

这看起来像会起作用。我迫不及待地尝试。当我回到家时,我会尽力回报。谢谢你的好主意 – Wayne 2012-08-19 17:59:43

+0

@CharlesWayne不客气! – 2012-08-20 09:19:47

0

如果你可以使用JavaScript,你可以使用navigator.userAgent,试图确定它是否是一个移动浏览器和Android设备,并注入相应的HTML元素。

下面是一个例子安卓UA字符串:
Mozilla/5.0 (Linux; U; Android 4.0.2; en-us; Galaxy Nexus Build/ICL53F) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30

0

如果您使用PHP,你可以使用这个:

function isMobile(){ 
$useragent_commentsblock=preg_match(’|\(.*?\)|’,$useragent,$matches)>0?$matches[0]:”; 

function CheckSubstrs($substrs,$text) 
{ 
foreach($substrs as $substr) 
if(false!==strpos($text,$substr)) 
return true; 
return false; 
} 

$mobile_os_list=array(’Google Wireless Transcoder’,'Windows CE’,'WindowsCE’,'Symbian’,'Android’,'armv6l’,'armv5′,’Mobile’,'CentOS’,'mowser’,'AvantGo’,'Opera Mobi’,'J2ME/MIDP’,'Smartphone’,'Go.Web’,'Palm’,'iPAQ’); 

$found_mobile=CheckSubstrs($mobile_os_list,$useragent_commentsblock); 

if ($found_mobile) return true; 
else return false; 

} 

如果只想安卓显示,可以编辑$ mobile_os_list这ARRY