video、audio的属性和方法(笔记)

目录

        • 内容介绍
        • 一、video 视频
          • 1、video 属性
          • 2、video 事件
          • 2、video css控制按钮
        • 二、audio 音频
          • 1、audio 属性
          • 2、audio 事件

内容介绍

  H5 引入了audio和video标签在页面中嵌入音频和视频,不用再使用Flash等插件播放媒体文件,下面了解一下audio和video的一些属性和方法。

一、video 视频

1、video 属性
属性说明 代码
禁止下载 controlslist=“nodownload”
禁止全屏 controlslist=“nodownload nofullscreen”(controlslist可多选)
自动播放 autoplay
默认静音 muted
循环播放 loop
预加载 preload
贴图 poster=“poster.jpg”
音量控制 var video = document.getElementById('_volume');
video.volume = 0;
(取值范围:0 到 1,0 是静音,0.5 是一半的音量,1 是最大音量(默认值))
播放时间控制 var vedio = document.getElementById('_time');
vedio.currentTime=600
视频当前正在播放的时间(单位:s),进度条拖动显示的时间值
播放地址切换 var vedio = document.getElementById('_src');
setTimeout(() => {vedio.src='http://vue.hyfarsight.com/webpack%E4%B8%80.mp4'}, 6000);
2、video 事件
事件名 说明
loadstart 视频查找,当浏览器开始加载资源时触发
durationonchange 时长变化,当指定资源时长发生变化时触发 => NAN变为实际时长;
var vedio = document.getElementById('_time');
console.log(vedio.duration);
vedio.addEventListener('durationchange',function(e){console.log(vedio.duration); })
loadedmetadata 元数据加载,当指定资源的元数据已加载时触发,元数据包括时长/尺寸/文本轨道等信息值
loadeddata 视频下载监听,当当前帧的数据已加载,但没有足够的数据来播放指定资源的下一帧时触发
progress 浏览器下载监听,当浏览器正在下载指定资源时触发
canplay 浏览器下载监听,当浏览器正在下载指定资源时触发
canplaythrough 可流畅播放,当浏览器预计能够在不停下来进行缓冲的情况下持续播放指定资源时触发
play 播放监听
pause 暂停监听
seeking 查找开始,当用户开始移动、跳跃到资源中新的位置时触发
seeked 查找结束,当用户已经移动、跳跃到视频中新的位置时触发
waiting 视频加载等待,当视频由于需要缓冲下一帧而停止,等待时触发
playing 当视频在已经因缓冲而暂停或停止后已就绪时触发
timeUpdate 目前的播放位置已更改时,播放时间更新
ended 播放结束
error 播放错误
volumechange 音量改变时
stalled 当浏览器尝试获取媒体数据,但数据不可用时
ratechange 当视频的播放速度已更改时
2、video css控制按钮
	/* 全屏按钮 */
	
	video::-webkit-media-controls-fullscreen-button {
     
	    display: none;
	}
	/* 播放按钮 */
	
	video::-webkit-media-controls-play-button {
     
	    display: none;
	}
	/* 进度条 */
	
	video::-webkit-media-controls-timeline {
     
	    display: none;
	}
	/* 观看的当前时间 */
	
	video::-webkit-media-controls-current-time-display {
     
	    display: none;
	}
	/* 剩余时间 */
	
	video::-webkit-media-controls-time-remaining-display {
     
	    display: none;
	}
	/* 音量按钮 */
	
	video::-webkit-media-controls-mute-button {
     
	    display: none;
	}
	
	video::-webkit-media-controls-toggle-closed-captions-button {
     
	    display: none;
	}
	/* 音量的控制条 */
	
	video::-webkit-media-controls-volume-slider {
     
	    display: none;
	}
	/* 所有控件 */
	
	video::-webkit-media-controls-enclosure {
     
	    display: none;
	}

二、audio 音频

1、audio 属性
属性 说明
src 播放资源的url地址
preload 预加载
loop 循环播放-当前播放结束后重新播放
controls 是否显示控件
autoplay 自动播放
duration 媒体总时长,无法获取时返回NAN
paused 媒体被暂停,返回true,否则返回false
ended 媒体文件播放完毕
muted 用来获取是否为静音状态,值为bool
volume 控制音量大小,0–1
startTime 返回起始的播放时间
error 返回错误代码
currentTime 用来获取或者控制当前的播放时间,单位为秒(s)
currentSrc 以字符串形式返回正在播放或者已经加载的文件
2、audio 事件
事件名 说明
load() 加载资源
play() 播放
pause() 暂停播放
canPlayType() 测试是否支持特定类型文件
loadstart 客户端开始请求数据
progress 客户端正在请求数据,缓冲
play 播放
pause 暂停
ended 结束
timeupdate 当前播放时间发生改变的时候
canplaythrough 资源已经载入完成
canplay 缓冲至目前的可播放状态

标签:JavaScript,HTML5,video,audio,media


更多演示案例,查看 案例演示


欢迎评论留言!

你可能感兴趣的:(JavaScript,Note,javascript,html5)