html5 video标签兼容性与自定义控件

本文探讨了在不同浏览器环境下视频播放的兼容性问题,提供了多种格式的视频资源,包括MPEG4/H.264、ogg、webm,并通过<embed>标签在IE8及以下版本上实现兼容。同时介绍了视频格式转换工具freemake video converter的使用,以及HTML5视频元素的关键属性与方法。此外,文章还涉及了视频播放器的全屏功能、不同浏览器的兼容性测试结果,以及一个粗糙的视频播放器实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Video不兼容IE8及之前的版本和opera mini。

格式上MPEG4/H.264兼容大部分浏览器,除低版本Firefox和低版本opera,这些可以通过用ogg格式解决,而webm是一种开放、免费的格式。对于IE8及以下版本可以嵌入<embed>标签。

以下为代码:

 1 <video controls="controls" poster="mei.png">
 2                 <!-- MP4格式不兼容Firefox 20以下和opera 24以下 Safari3.1以下-->
 3                 <!-- 部分兼容FF34-21 安卓浏览器4.3以下 安卓ff44 UC9.9 -->
 4 
 5                 <source src="http://nettuts.s3.amazonaws.com/763_sammyJSIntro/trailer_test.mp4" type="video/mp4">
 6                 <!-- <source src="video/langyabang_18.mp4" type="video/mp4"> -->
 7                 <!-- ogg格式兼容Firefox 20以下和opera 24以下 安卓ff44 UC9.9-->
 8                 <!-- 不兼容FF 2~3 Opera10.1  -->
 9                 <source src="http://nettuts.s3.amazonaws.com/763_sammyJSIntro/trailer_test.ogg" type="video/ogg">
10                 <!-- <object data="http://nettuts.s3.amazonaws.com/763_sammyJSIntro/trailer_test.mp4"> -->
11                 <!-- ie7/8有object会打开WindowsMediaPlayer -->
12                 <!-- ie7/8只有embed会正常播放 -->
13                 <!-- <img src="images/mei.png"> -->
14                     <embed src="http://nettuts.s3.amazonaws.com/763_sammyJSIntro/trailer_test.mp4" pluginspage="http://www.macromedia.com/go/getflashplayer"/>
15                 <!-- </object> -->
16             </video>

 

推荐我用的视频格式转换工具,可以直接转换出需要的这三种格式:freemake video converter

常用的一些属性与方法:

videoElement.volumn 设置或返回音量,为0~1间的数字;

videoElement.currentTime 设置或返回当前进度,为秒数;

videoElement.duration 返回视频长度,为秒数;

videoElement.paused 返回当前是否暂停;

 

videoElement.play() 开始播放;

videoElement.pause() 暂停播放;

 

 

有关全屏:

Full screen API:可以让一个元素全屏,例如video或canvas。

支持的情况并不很好,具体见http://caniuse.com/#search=full%20screen

对于不支持的我的做法是,放大当前元素占满浏览器窗口。

 

测试情况:

Windows7下:

Safari不能放,不是很懂。。。

在其他浏览器中都正常;

IE10之前我都是让它充满整个浏览器窗口。

在米4中:

(所有浏览器都是最新)

实际测试时在UC中video会替换掉我的自定义控件,UC的控件可以全屏;

小米自带浏览器会直接全屏,用的好像是内置的播放器;

火狐是正常的;

微信和UC一样;

qq和小米自带浏览器差不多,都自动全屏并且用浏览器的控件,不过全屏下播放界面不一样。

 

写了一个很粗糙的播放器,在电脑端还可以接受,放到手机上实在不方便,我接着改。。。

具体见:

http:\\zhangqiong.github.io\myplugins\video.html

 不好意思发现之前用的线上视频不能访问了

参考文档:

全屏 https://developer.mozilla.org/zh-CN/docs/DOM/Using_fullscreen_mode

使用 HTML5 音频和视频 https://developer.mozilla.org/zh-CN/docs/Web/Guide/HTML/Using_HTML5_audio_and_video

Media buffering, seeking, and time ranges  https://developer.mozilla.org/zh-CN/Apps/Fundamentals/Audio_and_video_delivery/buffering_seeking_time_ranges

 当音频/视频处于加载过程中时,会依次发生以下事件:http://www.w3school.com.cn/tags/av_event_durationchange.asp

转载于:https://www.cnblogs.com/zqiong/p/5265994.html

HTML5语义化标签是在HTML5中新增的一些标签,用于更好地描述网页的结构和内容,比传统的div标签更具有含义。这些标签能够提供更好的可读性、可维护性和可访问性,并且对搜索引擎优化也有一定的帮助。常用的HTML5语义化标签包括: 1. header:表示页面中一个内容区块或整个页面的标题。 2. section:表示页面中的一个内容区块,如章节、页眉、页脚、或页面的其他部分,可以和h1、h2等标题元素结合使用,有助于构建更好的文档结构。 3. article:表示页面中独立的一块内容,和上下文无关,比如一篇文章。 4. aside:表示article标签内容之外其相关的辅助信息。 5. nav:表示页面中导航链接的部分。 6. footer:表示整个页面或页面中一个内容区块的脚注。 除了上述常用的语义化标签HTML5还新增了其他标签,如hgroup、figure、figcaption等,这些标签可以根据具体需要来使用,根据页面的结构和内容来选择最合适的标签。 通过使用HTML5语义化标签,我们可以使网页的结构更清晰,代码更易读、易于维护,同时也为搜索引擎提供更好的理解和索引网页内容的能力。这样有助于提升网页的用户体验和可访问性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [HTML5语义化标签](https://blog.youkuaiyun.com/weixin_43797050/article/details/104867270)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [html5语义化标签以及使用标准](https://download.youkuaiyun.com/download/weixin_38664532/14886895)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值