<!DOCTYPE html>
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta
http-equiv="Content-Type" content="text/html; charset=utf-8" />
   
<title></title>
</head>

<body>

<!--大概意思是在页面定义一个div用来保存js中输出的video控件,给playVideo方法传入参数来控制播放器,如果碰到在本机可以播放,但是在服务器上无法播放的问题时,请设置iis的mime类型,查看类型中是否有.mp4,没有就添加
扩展名:mp4   mime类型:video/mp4,,我本机IIS7-->

<div
id="divVideo"></div>
    <script type="text/javascript">
 
      playVideo({
            //所有参数,elemt和src为必填其他看需求怎么要求
           
//elemt为播放控件要插入的容器,src为视频文件地址,preload为预加载,autoplay是否页面进入就自动播放
           
//poster为播放前的遮照图片,loop为是否循环播放,width和heigth默认100%
            elemt:
document.getElementById("divVideo"),
            src: "3.mp4",  
 //此地址是在本机测试用的,如果发布在服务器上请写服务器的绝对路径。我是发布在外网上的,例如:http://www.tttt.com/test/3.mp4
 
          preload: "true",
            autoplay: "true",
           
poster: "",
            loop: "true",
            width: "",
         
  heigth:""

});

function  playVideo (opt) {
        if (typeof (opt) == "undefined")
{
            alert("请传入必要参数!");
            return;
        }
     
  if (typeof (opt.elemt) == "undefined") {
           
alert("请指定播放器要插入的对象!");
            return;
        }
        if
(typeof (opt.src) == "undefined") {
            alert("请指定要播放视频的路径!");
   
        return;
        }
        var _this = this;
        _this.elemt
= opt.elemt;                                       //播放器要插入的对象
       
_this.src = opt.src;                                          
//视频的URL(必设) 
        _this.width = opt.width > 0 ? opt.width + "px" :
"100%";       //宽度(默认100%) 
        _this.height = opt.height > 0 ?
opt.height + "px" : "100%";    //高度(默认100%)
        _this.autoplay =
opt.autoplay == "true" ? "autoplay" : "";     //自动播放(true为自动播放)
       
_this.poster = opt.poster;                                    
//视频封面,播放时的封面图片
        _this.preload = opt.preload == "true" ? "preload" :
"";        //预加载(true时启动加载)
        _this.loop = opt.loop == "true" ? "loop"
: "";                 //循环播放(true时循环播放)
        var str = "<video
id='playVideo' controls ";                   //根据设置的属性的值,拼写video控件
       
str += " width='" + _this.width + "' height='" + _this.height + "' " +
_this.autoplay + " " + _this.preload + " " + _this.loop + " ";
        if
(typeof (_this.poster) != "undefined") {
            str += " poster='" +
_this.poster + "' >";
        } else {
            str += " >
";
        }
        str += " <source src='" + _this.src + "'
 type='video/mp4; codecs='avc1.42E01E, mp4a.40.2''/>";
        str +=
"</video>";
        _this.elemt.innerHTML = str;                      
            //将str放到要插入的对象中
    }

</script>
</body>
</html> 

借用网上大神的一些知识,html5 video 视频播放都兼容(Android,iOS,电脑)的更多相关文章

  1. 实现网上大神的asp.net mvc + ef +easyui

    大神开源博客: http://www.cnblogs.com/ymnets/p/3424309.html 系统更换UI:本人喜欢基于bootstrap的adminlteUI,所以后面会将UI更换为ad ...

  2. 移动端HTML5<video>视频播放优化实践

    遇到的挑战 移动端HTML5使用原生<video>标签播放视频,要做到两个基本原则,速度快和体验佳,先来分析一下这两个问题. 下载速度 以一个8s短视频为例,wifi环境下提供的高清视频达 ...

  3. 移动端HTML5<video>视频播放优化实践[转]

    http://blog.csdn.net/u010918416/article/details/52705732 http://www.xuanfengge.com/html5-video-play. ...

  4. 移动端 HTML5 <video> 视频播放优化实践

    遇到的挑战 移动端HTML5使用原生<video>标签播放视频,要做到两个基本原则,速度快和体验佳,先来分析一下这两个问题. 下载速度 以一个8s短视频为例,wifi环境下提供的高清视频达 ...

  5. [转]移动端HTML5<video>视频播放优化实践

    遇到的挑战 移动端HTML5使用原生<video>标签播放视频,要做到两个基本原则,速度快和体验佳,先来分析一下这两个问题. 下载速度 以一个8s短视频为例,wifi环境下提供的高清视频达 ...

  6. Chrome/Chromium HTML5 video 视频播放硬件加速

    Chromium站点上有个大致的框图.描写叙述了Chromium的video在各个平台 - 包含Android - 上是怎样使用硬件资源来做视频编解码加速的: 而依据Android Kitkat上的C ...

  7. HW Video Acceleration in Chrome/Chromium HTML5 video 视频播放硬件加速

    Introduction Video decode (e.g. YouTube playback) and encode (e.g. video chat applications) are some ...

  8. K 大神的博弈知识汇总

    博弈知识汇总 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可.两个人轮流从堆中取物体若干,规定最后取光物体者取胜.这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻 ...

  9. 各位大神,我请教一个问题,我在Android studio上创一个project显示错误

    Error:FAILURE: Build failed with an exception. * Where: Build file 'C:\Users\Administrator\AndroidSt ...

随机推荐

  1. SQLite 对中文路径的支持(用到了StringToWideChar和Utf8Encode在D7的System单元中自带)

    最近用SQLITE作为数据库,发现,如果直接传递带中文路径或文件名的数据库,会导致无法打开数据库的情况.看了一下SQLITE的源码,才发现,原来SQLITE中是用UTF8编码进行文件打开操作的. 所以 ...

  2. 【Xamarin开发 Android 系列 1】环境部署搭建

    原文:[Xamarin开发 Android 系列 1]环境部署搭建 开篇自然先扯一段,近几年移动互联网如果熊猫零食一样,蔓延迅速.楼主身为一个微软忠实的粉丝,无奈,老爹不给力.Silverlight开 ...

  3. 能让你成为更优秀程序员的10个C语言资源

    能让你成为更优秀程序员的10个C语言资源 本文由 伯乐在线 - archychu 翻译自 mycplus.欢迎加入 技术翻译小组.转载请参见文章末尾处的要求. 一些人觉得编程无聊,一些人觉得它很好玩. ...

  4. bzoj2004

    反正N<=10^9肯定是矩阵乘法反正p<=10肯定是状压dp首先有一个非常重要的性质是任意连续P个站,必须保证K辆车必须停在其中的一个站我们设f[i,S]表示到第i个站搞定了后,这K辆公交 ...

  5. 编程实现改变win7主题

    一  : 解析问题 1. Windows 7 主题在:%windir%\Resources\Themes  : 2: 我们通过shell 命令  (这个是msdn中提到的) rundll32.exe ...

  6. Excel通过宏创建百万数据

    打开视图->宏->编辑,代码如下,cells(n,m)表示当前Excel表格第n行第m列</span> Sub newdata() Dim i As Long Cells(i, ...

  7. yml文件数据的简洁表达方法(Hashes to OpenStruct)

    通过ruby编写测试脚本的时候,我还是喜欢采用yml来管理测试数据,就像以前的文章(Selenium WebDriver + Grid2 + RSpec之旅(五))提到的一样,但是在引用yml中的数据 ...

  8. Boost库

    2014-08-31 Boost库是一个经过千锤百炼.可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一.Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成 ...

  9. 2013 ACM区域赛长沙 C Collision HDU 4793

    题意:在平面上0,0点,有一个半径为R的圆形区域,并且在0,0点固定着一个半径为RM(<R)的圆形障碍物,现在圆形区域外x,y,有一个半径 为r的,并且速度为vx,vy的硬币,如果硬币碰到了障碍 ...

  10. HDU 1568 Fibonacci 数学= = 开篇

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1568 分析:一道数学题 找出斐波那契数列的通项公式,再利用对数的性质就可得到前几位的数 斐波那契通项公 ...