因公司需求,要做一个扫描语音播报的功能,所以用到一些音频/视频标签

考虑到   <embed>   标签对于ie的兼容性更好一些所以,我在这采用了   <embed>   标签,在使用中遇到的一些问题和处理方法,如有不对的地方和可以改进的地方欢迎指教

问题1:在使用<embed>  标签使用中发现在其属性autoplay和Loop属性在谷歌内核的浏览器下

  <embed id="devUnknown" src="'+_src+'" width="0" height="0" loop="false" autostart="true"/>是未能控制音频就绪后是否播放,在谷歌内核浏览器中即使autostart='false'音频仍然会自动播放

  在网上有人提供出一种说在谷歌下autostart="0"或"1"可替代true跟false但我测试过发现然并卵,在谷歌下并发生变化,后续还根据网上遇到这个问题的小伙伴提供的方法发现并未适用,所以最后下面方法代替

 <audio  hidden="true" autoplay="true" loop="true">
  <source id="devUnknown" src="https://www.toonies.cn/Public/static/mp3/unsale.mp3" type="audio/ogg">
  <source src="https://www.toonies.cn/Public/static/mp3/unsale.mp3" type="audio/mpeg">
  您的浏览器不支持 audio 元素。
5 </audio>

2.<embed/>无法检测到音频/视频是否播放结束,同时如果我中途更换了<embed/>标签的src也会导致<embed/>不能再次进行播放,在w3c内和网上找了一段时间发现并没有直接再次启动的办法(火狐下可以做到更换src后切换音频/视频内容),则采用了下面的方法代替

 function voice(_src){
/*_src为音频要播放的路径*/
var _html = '<embed id="devUnknown" src="'+_src+'" width="0" height="0" loop="false" autostart="true"/>';
if($('embed').attr('id')=='devUnknown'){
//二次启动时删除原来的embed
$('embed').remove();
}
$('body').append(_html);
};

关于embed的一些使用兼容的更多相关文章

  1. 视频 embed标签动态改变Src的值,局部刷新播放其他视频的javascript方法

    看图: 视频处html代码: <div id="mod_player" class="mod_player"> <embed id=" ...

  2. HTML页面嵌入视频和JS控制切换视频的问题

    文章摘自:http://www.cnblogs.com/jorton/archive/2012/03/19/vidio_in_site.html 首先,在页面中嵌入视频的HTML代码为: 1 < ...

  3. HTML中的音频 视频 的播放代码

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. HTML 之 Embed兼容问题

    首先IE只支持对Object的解析,火狐.谷歌.Safari只支持对Embed的解析. 1.传统的方法 <object classid="clsid:d27cdb6e-ae6d-11c ...

  5. ie6,ie7,ie8 css bug兼容解决方法

    IE浏览器以不支持大量的css 属性出名,同时也因其支持的css属性中存在大量bug. 这里收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望以后解决类似问题的时候能够快速解决,也希 ...

  6. 关于object和embed

    最近发现很久之前写的demo 在FF上有兼容问题, 主要发生在如下: 由于时间太久,自己都有点搞不清怎么写的,尤其是object标签,今天查了很多资料,总结一下object标签 在网页中正常显示fla ...

  7. ie6,ie7,ie8 css bug兼容解决记录

    ie6,ie7,ie8 css bug兼容解决记录 转载自:ie6,ie7,ie8 css bug兼容解决记录 - 前端开发 断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面 ...

  8. 利用FlashPaper在web页面中显示PDF文件(兼容各浏览器)

    应项目需求要把PDF内嵌到网页中显示,其中有了很多办法,比如用<embed/>元素放入PDF文件,但是效果不理想,浏览器兼容不理想,在ie9/8(其他版本没有测试)显示会提示下载pdf文件 ...

  9. 【转】Web前端浏览器兼容初探

    原文地址:http://blog.jobbole.com/38638/ 前言 浏览器兼容是前端开发人员必须掌握的一个技能,但是初入前端的同学或者其他后台web开发同学往往容易选择忽略,而形成两个极端: ...

随机推荐

  1. ‘true’==true返回false详解

    JavaScript高级程序设计(第3版)  第三章非常完整地解释了原因. 3.5.7 相等操作符 在转换不同的数据类型时,相等和不相等操作符遵循下列基本规则: . 如果有一个操作数是布尔值,则在比较 ...

  2. PCI9054 突发模式数据传输 (burst mode data transfer )

    C mode target slave , 之前看PCI9054 datasheet知道这个burst mode ,也看了时序图,但是一直缺乏一个感性的认识. 今天网上买的 USB逻辑分析仪到货了,接 ...

  3. Java类型转化报错

    Java类型转化报错 报错如下: java.lang.ClassCastException:java.util.HashMap cannot be cast to java.util.List.

  4. Linux显示检查设置文件中的语法是否正确

    Linux显示检查设置文件中的语法是否正确 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ apachectl [conflgtest] 程序"apa ...

  5. ssh_Connection reset by peer报错

    连接SSH时,产生了一下错误----->Read from socket failed: Connection reset by peer 首先查看日志 tail -f /var/log/aut ...

  6. Reactor-反应器模式

    Reactor模式:反应器模式,是高性能网络服务器中最为常用的一种模式,libevent,muduo,libuv等网络库都是以 Reactor模式构建.Reactor模式由同步事件多路分解器和具体事件 ...

  7. jquery自带的方法

    5.1,$.trim $.trim("   Hello, chinaren_1123 & 摆渡浮桥!   "); //去掉前后空格后->Hello, chinaren ...

  8. 细说Ajax跨域

    一.什么是跨域 跨域问题来自于浏览器同源策略的限制,包括DOM同源限制和Ajax同源限制,本文探讨的是Ajax跨域.Ajax跨域指的是一个页面的Ajax只能请求和当前页面同源的数据,如果发现请求到的数 ...

  9. RobotFramework自动化测试框架的基础关键字(三)

    1.1.1        如何定义一个字典 此处我们说的字典,其实就等同于python语言中的字典,和列表一样,字典也是python语言中非常常用的一种数据结构,也类似于Java 语言中的Map. 在 ...

  10. Redis进阶实践之十六 Redis大批量增加数据

    一.介绍      有时,Redis实例需要在很短的时间内加载大量先前存在或用户生成的数据,以便尽可能快地创建数百万个键.这就是所谓的批量插入,本文档的目标是提供有关如何以尽可能快的速度向Redis提 ...