video(最近用过video,在网上查了下资料,总结了一下)

src :视频的属性
poster:视频封面,没有播放时显示的图片
preload:预加载
autoplay:自动播放
loop:循环播放
controls:浏览器自带的控制条
width:视频宽度
height:视频高度

获取video对象

[color=#ff0000]Media = document.getElementById("media"); [/color]

Media方法和属性:
HTMLVideoElement和HTMLAudioElement 均继承自HTMLMediaElement
Media.error; //null:正常
Media.error.code; //1.用户终止 2.网络错误 3.解码错误 4.URL无效
//网络状态

  • Media.currentSrc; //返回当前资源的URL
  • Media.src = value; //返回或设置当前资源的URL
  • Media.canPlayType(type); //是否能播放某种格式的资源
  • Media.networkState; //0.此元素未初始化 1.正常但没有使用网络 2.正在下载数据 3.没有找到资源
  • Media.load(); //重新加载src指定的资源
  • Media.buffered; //返回已缓冲区域,TimeRanges
  • Media.preload; //none:不预载 metadata:预载资源信息 auto:

//准备状态

  • Media.readyState;//1:HAVE_NOTHING 2:HAVE_METADATA 3.HAVE_CURRENT_DATA 4.HAVE_FUTURE_DATA 5.HAVE_ENOUGH_DATA
  • Media.seeking; //是否正在seeking

//回放状态

Media.currentTime = value; //当前播放的位置,赋值可改变位置
Media.startTime; //一般为0,如果为流媒体或者不从0开始的资源,则不为0
Media.duration; //当前资源长度 流返回无限
Media.paused; //是否暂停
Media.defaultPlaybackRate = value;//默认的回放速度,可以设置
Media.playbackRate = value;//当前播放速度,设置后马上改变
Media.played; //返回已经播放的区域,TimeRanges,关于此对象见下文
Media.seekable; //返回可以seek的区域 TimeRanges
Media.ended; //是否结束
Media.autoPlay; //是否自动播放
Media.loop; //是否循环播放
Media.play(); //播放
Media.pause(); //暂停
//视频控制

Media.controls;//是否有默认控制条
Media.volume = value; //音量
Media.muted = value; //静音
TimeRanges(区域)对象
TimeRanges.length; //区域段数
TimeRanges.start(index) //第index段区域的开始位置
TimeRanges.end(index) //第index段区域的结束位置
//相关事件

var eventTester = function(e){
Media.addEventListener(e,function(){
console.log((new Date()).getTime(),e)
},false);
}

eventTester("loadstart"); //客户端开始请求数据
eventTester("progress"); //客户端正在请求数据
eventTester("suspend"); //延迟下载
eventTester("abort"); //客户端主动终止下载(不是因为错误引起)
eventTester("loadstart"); //客户端开始请求数据
eventTester("progress"); //客户端正在请求数据
eventTester("suspend"); //延迟下载
eventTester("abort"); //客户端主动终止下载(不是因为错误引起),
eventTester("error"); //请求数据时遇到错误
eventTester("stalled"); //网速失速
eventTester("play"); //play()和autoplay开始播放时触发
eventTester("pause"); //pause()触发
eventTester("loadedmetadata"); //成功获取资源长度
eventTester("loadeddata"); //
eventTester("waiting"); //等待数据,并非错误
eventTester("playing"); //开始回放
eventTester("canplay"); //可以播放,但中途可能因为加载而暂停
eventTester("canplaythrough"); //可以播放,歌曲全部加载完毕
eventTester("seeking"); //寻找中
eventTester("seeked"); //寻找完毕
eventTester("timeupdate"); //播放时间改变
eventTester("ended"); //播放结束
eventTester("ratechange"); //播放速率改变
eventTester("durationchange"); //资源长度改变
eventTester("volumechange"); //音量改变

支持HTML5视频播放的浏览器支持3种视频格式 MP4, OGG 和 WebM,但并非所有的浏览器都支持3种。

你无法做到只用其中一种格式就能解决HTML5视频播放,MP4是比较全面,但它在firefox和Safari中并不是很友好,而OGG和WebM则支持Firefox、chrome和Safari,但同样的这些浏览器有一些旧版本也是不支持这两种格式的。

最常用的HTML5视频代码是这样子的:
html 代码


虽然HTML5 video很好,但它并不支持一些旧的浏览器,这就需要flash了,下面来看看如何创建flash视频代码
html 代码


[color=#ff0000]最简单的方法实现Play和Pause:[/color]

html 代码

$('video').trigger('play');
$('video').trigger('pause');

[color=#ff0000]点击视频就能播放和暂停[/color]
html 代码

$("video").trigger("play");//for auto play
    $("video").addClass('pause');//for check pause or play add a class
    $('video').click(function() {
        if ($(this).hasClass('pause')) {
            $("video").trigger("play");
            $(this).removeClass('pause');
            $(this).addClass('play');
        } else {
            $("video").trigger("pause");
            $(this).removeClass('play');
            $(this).addClass('pause');
        }
})

[color=#ff0000]静音和取消静音[/color]

html 代码

$('body').find("video").attr('id', 'video')
    var myVid = document.getElementById("video");
    $('.sound-icon').click(function() {
    //here "sound-icon" is a anchor class. 
    var sta = myVid.muted;
    if (sta == true) {
        myVid.muted = false;
        } else {
        myVid.muted = true;
    }
})

[color=#ff0000]使用poster在视频无法加载时显示图片:[/color]
html 代码


[color=#ff0000]重播功能:[/color]
html 代码

function restart() {
    var video = document.getElementById("Video1");
    video.currentTime = 0;
}

[color=#ff0000]下面是一个比较完整的例子:[/color]

html 代码



Full player example
 


 

 
 

 
 

canvas处理video视频,【复制代码,自己随便找个视频测试】

html 代码




    
    Document



  

你可能感兴趣的:(video(最近用过video,在网上查了下资料,总结了一下))