系统中要求有语音报警功能,在监控页面不断轮询后台报警,有新的语音报警会在页面播放,目前采用bgsound标签,当然该标签仅支持IE浏览器,这个不是关键,关键是该标签只有一个src属性,并没有播放列表,比如这次查询5个声音报警,需要顺序播放,那么我用JS来控制src的值,而且要延迟几秒,但控制的并不好,经常播着播着就乱套了呵呵不知道友友们有没有这方面的经验给指点一二呢!比如弄个隐藏的播放列表啥的,每次来新的声音就追加到后面,播放器不用考虑播放啥音乐,只要一直顺序播放就好了,没有就不播放,知道没有下一首音乐为止,播放过的音乐从列表中删除,不知道有没有,百度了一下午也没找到方案。大家给点意见和建议吧!
解决方案 »
- 急急急!!!遍历ul中所有li标签的里面的内容,如果有和文本框中的内容一致的li的话,什么也不做,如果没有,清空文本框中的内容。
- 看不懂INF文件,懂得进来帮忙下,谢了
- js传参乱码
- 如何制作文本编辑器,如何在FireFox使成为编辑模式
- 高分急问!!
- JavaScript表格
- JSP里用JS写个自动提交的函数,然后在每次初始化这个页面的时候调用这个函数
- 引号不够用怎么办?
- @@@parentElement和offsetParent的区别@@@@@
- 你好!请问一下在脚本中如何控制<A href="c:" id=aa target="_top"></a>的连接执行呢?---十分急~
- extjs4.0 MVC 取store的问题
- 定义JS接口
页面加载时,将这些文件都加载一次,以在客户端进行缓存,类似于预加载图片。用一个数组 var playList=[];记录播放列表
当有报警时,往数组入一个文件名
同时,有一个window.setTimeout在数组中去取一个值,当返回值不是空的情况下,调用flash播放器,修改flash播放器的src属性,同时调用.play方法,让flash去播放。
flash播放器宽和高设为0即可。
js的数组可以很容易的实现队列结构。
最后得到的报警在队列的未尾。
始终从除列的头部读取报警声音。。而且这二个操作(ajax,以及setTimeout)是两个不同的操作,不会有任何影响。
在ajax的回调中加入除列。
setTimeout从除列的头读取。