• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5 Video/Audio播放本地文件

HTML5 Video/Audio播放本地文件

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,Video,Audio等相关知识,匿名希望在学习及工作中可以帮助到您
这篇文章主要介绍了关于HTML5 Video/Audio播放本地文件,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

在得到用户允许后我们还是可以播放本地文件的,在页面中插入一个input节点并指定type为file,然后把该url设置为audio或video的src值即可

这段时间经常看到开发者在反复询问同一个问题,为什么通过设置src属性,不能播放本地的媒体文件?例如video.src=”D:\test.mp4”。

这是因为浏览器中的JavaScript不能直接直接访问本地资源(例如文件系统,摄像头,麦克风等),除非事先得到了用户的允许。浏览器之所以进行该限制也是很有必要的,试想一下,如果JavaScript能够肆无忌惮的访问本地的文件系统,那么窃取用户隐私数据就变得轻而易举了,当用户访问网络上的某个网页时,不知不觉中自己机器上保存的信用卡卡号,密码,公司的秘密文件等隐私文件或许已经被恶意的JavaScript程序上传到了远方的服务器上,这对用户来说是不可容忍的。

在得到用户允许后我们还是可以播放本地文件的,下面介绍一种方法。

在页面中插入一个input节点并指定type为file,如果需要播放多个文件,可以添加属性multiple。注册文件节点被更新时的回调函数,在回调函数中调用URL.createObjectURL函数来获取刚选择文件的url,然后把该url设置为audio或video的src值即可。

代码实例如下:

复制代码

代码如下:

<html>  
<body>  
<input type="file" id="file" onchange="onInputFileChange()">  
<audio id="audio_id" controls autoplay loop>Your browser can't support HTML5 Audio</audio>  
<script>  
function onInputFileChange() {  
   var file = document.getElementById('file').files[0];  
   var url = URL.createObjectURL(file);  
   console.log(url);  
   document.getElementById("audio_id").src = url;  
}  
</script>  
</body>  
</html>

该代码在Chrome 30和Firefox 24上测试通过,在IE上应该存在一定的兼容性问题(据我所知IE8及以前的版本肯定是不能工作的),因为IE对HTML5的支持不好,不知道IE10有没有实现相关的API。

相关推荐:

HTML中的<meta>标签的使用详解

以上就是HTML5 Video/Audio播放本地文件的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03HTML5实践-可伸缩的mobile搜索框图文详解
  • 2018-12-03怎样使用JS获取函数参数名称
  • 2018-12-03分享HTML5虚拟键盘出现挡住输入框的解决办法
  • 2018-12-03HTML5 WebSocket实现多文件同时上传的实例
  • 2018-12-03在webstorm中使用H5的快捷键
  • 2018-12-03深入剖析webstorage--html5的本地数据处理
  • 2018-12-03小程序学习之如何获取地理定位并显示城市名称
  • 2018-12-03使用PHP和HTML5 FormData实现无刷新文件上传
  • 2018-12-03HTML5实战与剖析之CSS选择器——getElementsByClassName()方法
  • 2018-12-03Canvas跨域的解决方案介绍

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • html5 embed标签的loop属性是怎么用的?embed标签的属性总结!
    • 介绍HTML5+Canvas调用手机拍照功能实现图片上传(上篇)
    • HTML5对手机页面长按会粘贴复制禁用的解决方法
    • 像这种网站效果,整屏整屏换有没有什么名字?
    • HTML5的学习路线分析
    • html5中canvas学习笔记2-判断浏览器是否支持canvas
    • html5指南-7.geolocation结合google maps开发一个小的应用
    • canvas绘制奥运五环代码分享
    • HTML5本地存储之Web Storage篇
    • 小程序学习之如何获取地理定位并显示城市名称

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有