jplayer 预加载问题

问题描述 投票:0回答:2

我正在使用 HTML5 jPlayer 并通过递归方法播放音频。

一切正常,音频正在播放,但加载新音频时有延迟。我希望通过预加载下一个音频来消除音频之间的延迟。

这就是我在递归中所做的事情

$("#jquery_jplayer_1").jPlayer("destroy");
if(val > 1)
            {
            
            $("#content #suraname").remove(); 
            $("#content #bismillah").remove(); 
            $("#jquery_jplayer_1").jPlayer({ready: function () {$("#jquery_jplayer_1").jPlayer("setMedia", {mp3: "http://www.cityislam.com/Audio/Script/"+qariName+"/"+value_xml_audio+"-"+val_xml+".mp3"});
                                                                $("#jquery_jplayer_1").jPlayer("play");}  })
            $("#jquery_jplayer_1").jPlayer( "option", "cssSelector");
                
            
            }

我该怎么做?

jquery html jplayer
2个回答
1
投票

来自官方文档

jPlayer构造函数选项jPlayer({preload)用于控制 当 jPlayer 开始下载新媒体时。某些浏览器将启动 当预加载选项为时,下载整个媒体 “元数据”。其他人会要求使用“auto”。唯一的方法是 确保下载不会自动开始是使用预加载 选项“无”。请记住,媒体可能无法下载,具体取决于 在您使用的浏览器上。移动浏览器,例如 Mobile Safari iOS 4.2 在下载或播放任何媒体之前需要手势。 即,用户必须按下按钮才能启动加载或播放 第一次操作。


1
投票

您需要实例化两个单独的 jPlayers 实例,两个实例都设置了

preload: auto
。然后设置第二个 jPlayer 在第一个 jPlayer 的
ended
事件中开始播放。

© www.soinside.com 2019 - 2024. All rights reserved.