html5实现视频播放<video>

本文介绍了如何使用HTML5的<video>元素实现视频播放功能,包括支持不同浏览器的视频格式、视频元素的属性、方法和事件,以及如何处理浏览器不支持HTML5播放的情况。此外,还提到了通过canPlayType方法判断浏览器是否能播放特定文件类型,并给出了加载和播放视频的JS示例。

注意:

1.关于视频格式,不同浏览器支持的不一样,safari--mp4  chrome--webm firefox opera--ogv,ie8或更早的浏览器不支持

2.语句详解 <video id="video" poster="images/prerollposter.jpg"  width="480" height="360" controls>
        <source src="video/preroll.mp4">
        <source src="video/preroll.ogv">
        <source src="video/preroll.webm">
        <p>Sorry, your browser doesn't support the video element</p>
</video>



3.如果希望增加flash插件,以处理浏览器不支持html5播放的情况,可以 <video>xxxxx <object>flash code</object> </video>

4.video元素API的一些常用属性方法和事件



5.可以利用类似ended的事件,来添加播放列表

var video; video = document.getElementById("video");

video.addEventListener("ended", nextVideo, false); //增加监听事件,继续nextVideo函数

6.canPlayType 方法,可以让浏览器判断是否可以播放的文件类型

video.canPlayType("video/mp4");   //video目录下mp4格式,会返回两个值,空字符串表示不可能,maybe表示也许

video.canPlayType('video/mp4; codecs="theora, vorbis"');  //如果增加了编解码器的具体类型,则有可能会多出一个返回值, probably最后可能

6.使用加载和play在js里

    video.load();
    video.play();


完整代码:

var position = 0;
var playlist;
var video;
window.onload = function()
{
    playlist = ["video/preroll", "video/areyoupopular", "video/destinationearth"];  //增加播放列表
    video = document.getElementById("video");
    video.addEventListener("ended", nextVideo, false); //增加监听事件
    video.src = playlist[position] + getFormatExtension(); //添加文件名
    video.load();
    video.play();
};


function nextVideo ()  //下一个视频函数
{
    position++;
    if (position >= playlist.length)
    {
        position = 0;
    }
    video.src = playlist[position] + getFormatExtension();
    video.load();
    video.play();
}


function getFormatExtension()  //格式判断函数
{
    if (video.canPlayType("video/mp4") != "")
    {
        return ".mp4";
    }
    else if (video.canPlayType("video/webm") != "")
    {
        return ".webm";
    }
    else if (video.canPlayType("video/ogg") != "")
    {
        return ".ogg";
    }
}
 /**
 * Created by andrewlee on 13-11-5.
 */

<!doctype html>
<html lang="en">
<head>
<title>Webville TV</title>
<meta charset="utf-8">
<link rel="stylesheet" href="webvilletv.css">
    <script src="webvilletv.js"></script>
</head>
<body>


<div id="tv">


<div id="tvConsole">
<div id="highlight">
<img src="images/highlight.png" alt="highlight for tv">
</div>


<!--
<div id="videoDiv">
<video controls
poster="images/prerollposter.jpg"
id="video" 
src="video/preroll.mp4" 
width="480" height="360">
</video>
</div>
-->


<div id="videoDiv">
<video id="video"
poster="images/prerollposter.jpg" 
width="480" height="360" 
controls>
            <!--
        <source src="video/preroll.mp4">
        <source src="video/preroll.ogv">
        <source src="video/preroll.webm">
            -->
        <p>Sorry, your browser doesn't support the video element</p>
</video>
</div>
</div>




</div> <!-- tv -->




</body>
</html>


html5入门到精通 视频教程 下载网盘:http://pan.baidu.com/s/1sllC6TJ 目录: HTML5介绍 HTML5开发教程-1.相关概念和准备工作 HTML5开发教程-2.HTML5基础 HTML5开发教程-3.HTML核心元素1 HTML5开发教程-4.HTML核心元素2 HTML5开发教程-5.CSS基础 1.HTML常用标记超链接表格表单 2.HTML常用标题段落等标记 3.相关概念及HTML语法 4-CSS语法部分选择符 5-CSS部分选择符及选择符权重 6-CSS部分文本属性上 7-CSS部分文本属性下 8-CSS列表背景属性 9-CSS背景及浮动属性 10-盒模型 HTML5混合开发 玩转H5混合开发(1) 玩转H5混合开发(2) 玩转H5混合开发(3) 玩转H5混合开发(4) JavaScript培训视频教程 JavaScript基础语法01 JavaScript概述02 JavaScript基础语法03_变量 JavaScript基础语法04_数据类型 JavaScript基础语法05_进制 JavaScript基础语法06_进制转换 JavaScript基础语法07_连接符和转义字符 JavaScript基础语法08_算数运算符 JavaScript基础语法09_赋值运算符 JavaScript基础语法10_关系运算符 JavaScript基础语法11_条件运算符 JavaScript基础语法12_逻辑运算符 JavaScript基础语法13_逻辑运算符 JavaScript基础语法14_typeof运算符 JavaScript基础语法15_选择结构 JavaScript基础语法16_选择结构 JavaScript基础语法17_switch结构 JavaScript基础语法18_switch结构 JavaScript基础语法19_while循环结构 JavaScript基础语法20_do-while循环 JavaScript基础语法21_for循环 JavaScript基础语法22_for循环 JavaScript基础语法23_break,continue语句 JavaScript基础语法24_函数 JavaScript基础语法25_函数 JavaScript基础语法26_递归 JavaScript基础语法27_对象创建 JavaScript基础语法28_两种数据类型的内存对比 JavaScript基础语法29_数组的创建及使用 JavaScript基础语法30_数组常用方法 JavaScript基础语法31_数组的排序 JavaScript基础语法32_时间和日期 JavaScript基础语法33_时间和日期 JavaScript基础语法34_时间和日期 JavaScript基础语法35_字符串概述 JavaScript基础语法36_字符串常用方法 JavaScript基础语法37_字符串常用方法 JavaScript基础语法38_字符串常用方法 JavaScript基础语法39_正则表达式概述 JavaScript基础语法40_正则表达式 JavaScript基础语法41_正则表达式 JavaScript基础语法42_正则表达式 JavaScript基础语法43_正则表达式 JavaScript基础语法44_正则表达式 JavaScript基础语法45_正则表达式 JavaScript基础语法46_Function类型 JavaScript基础语法47_Function类型 JavaScript基础语法48_Function类型 JavaScript基础语法49_Function类型 前端开发完整教程 01 HTML5基础 02 CSS3 03 阶段项目01 04 UI设计(第2阶段内容) 05 AP原型 06 阶段项目02 07 JavaScript核心编程 08 DOM编程 09 阶段项目03 10 服务器端开发技术 11 HTTP协议 12 HTML5高级 13 阶段项目04 14 JQUERY 15 AJAX 16 阶段项目05 17 Bootstrap 18 ANGULARJS 19 拓展进阶
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值