一些网页会有视频的嵌套窗口,在电脑上可以播放,但是在手机上打开这个网页,视频那里就会显示“插件不支持”的类似画面。

代码要怎样写才能实现既能在电脑上播放又可以在手机上播放呢?

HTML5

没错,使用html5就可以实现。但是你会问并不是所有的浏览器都支持html5啊,怎么办?

没事,我们可是使用折冲的方法对浏览器进行判断。如果是电脑的浏览器,我们还是使用以前的代码;如果是手机的浏览器。我们就使用html5。因为现在的智能手机的浏览器一般都支持html5的了。其实不支持html5的好像就ie9以下的浏览器了。

其中有一步骤很关键:就像为了使网页能播放flv格式视频而要在IIS添加MIME类型那样需要在IIS增加对应的MIME类型。

下面来看看具体代码怎样写。

视频嵌套界面:

        <div class="left">
            <iframe id="rightPic" style="border:0;" scrolling="no" src="right.html" ></iframe>
            <iframe id="rightPic2" style="width:234px;height:180px; border:0;margin-left:-6px;margin-top:-8px; display:none;" scrolling="no" class="left" src="video.htm" ></iframe>
        </div>

判断浏览器:

<script type="text/javascript">
    //------------判断浏览器-----------
    var Sys = {};
    var ua = navigator.userAgent.toLowerCase();
    var s;
    (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
        (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
        (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
        (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
        (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
    //------------判断浏览器-----------

    $(function () {
        $("#marquee").kxbdMarquee();
        try {
            if (Sys.ie.toString() == "6.0") {
                //$("#mainRight").css("padding-left", "7");

                $("#middlelogo div").attr("class", "left");

                $("#rightlogo").css({ "width": "233", "margin-left": "3" });
                $("#rightlogo div").attr("class", "left rightlogo");
                $("#rightlogo img").css("width", "233");
                $("#rightlogo div:first").attr("class", "left");
                $("#rightPic").css({ "src": "right2.html", "width": "233", "margin-left": "0" });

                $("#bottomlogo img").css("width", "796").attr("class", "left");
            }
            else {
            }
        }
        catch (e) { }
        try {
            if (ua.indexOf('android') > -1 || ua.indexOf('linux') > -1) {
                $("#rightPic").css("display", "none");
                $("#rightPic2").css("display", "");
            }
        }
        catch (e) { }
    });
</script>

right.html文件:

<!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=gb2312" />
    <title></title>
    <!--<link rel="stylesheet" type="text/css" href="css/default.css">    -->
    <!--<script type="text/javascript" src="js/slide.js"></script>-->
</head>
<body style="border: 0px; margin: 0; padding: 0px;">
 

<div id="bigpicarea" style="width:300px;height:180px;overflow:hidden ;" >

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" 
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="240" height="180">

<param name="movie" value="vcastr22.swf"/>

<param name="quality" value="high"/> 
<param name="allowFullScreen" value="true" />

<param name="FlashVars" value="vcastr_file=MPEG.flv&IsAutoPlay=1" />

<embed src="vcastr22.swf" allowFullScreen="true" FlashVars="vcastr_file=MPEG.flv&IsAutoPlay=1" quality="high" 
pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="240" height="180"></embed>

</object>
 
</div>
</body>
</html>

video.htm文件:

<!DOCTYPE html> 
<html> 
<head> 

<title>Html5 video</title> 

</head> 
<body>         
    <div style="margin-top:-40px; margin-left:-7px;"> 
        <video controls="controls" autoplay="autoplay" width="240" height="220" style="margin-top:-40px;">
          <source src="CQ.mp4" type="video/mp4" />
          Your browser does not support the video tag.
        </video>
    </div> 
</body>   
</html> 

 

posted on 2014-11-17 11:29  vinsonLu  阅读(32573)  评论(2编辑  收藏  举报