2014-12-19 111 views
2

我有几个jPlayer实例,显然有不同的id。jPlayer持续时间和进度错误

编辑:这是我目前的小提琴

http://jsfiddle.net/UrielUVD/8t52eqsp/

$("#jquery_jplayer_1").jPlayer({ 
    ready: function() { 
    $(this).jPlayer("setMedia", { 
     title: "test", 
     mp3: "sourceofmp3" 
    }); 
    }, 
    timeupdate: function(event) { 
     $("#jp-progress-slider-1").slider("value",event.jPlayer.status.currentPercentAbsolute); 
    }, 
    swfPath: "jquery.jplayer.swf", 
    cssSelectorAncestor: '#jp_container_1', 
    cssSelector: 
    { 
    play: '.icon-play1', 
    pause: '.icon-pause1', 
    seekBar: '.ui-slider', 
    playBar: '.ui-slider-range', 
    currentTime: '.jp-current-time', 
    duration: '.jp-duration' 
    }, 
    supplied: "mp3", 
    solution_play: "flash, html", 
    wmode: "window", 
    mobile:true, 
    preload: "metadata", 
    volume: 1, 
    duration:true, 
    keyEnabled: true, 
    errorAlerts: true 
}); 

而他相应的jQuery UI的滑块

$("#jp-progress-slider-1").slider({ 
animate: "fast", 
max: 100, 
range: "min", 
step: 0.1, 
value : 0, 
slide: function(event, ui) { 
    var sp = $("#jquery_jplayer_1").data("jPlayer").status.seekPercent; 

    if(sp > 0) { 
    $("#jquery_jplayer_1").jPlayer("playHead", ui.value * (100/sp)); 
    } else { 

    setTimeout(function() { 
     $("#jp-progress-slider-1").slider("value", 0); 
    }, 0); 
    } 
} 
}); 

在网页一切正常,持续时间,当前时间,当前进步,事件和听众...

但是在移动(adnroid)持续时间中,currentPercentAbsolute,currentPercentRelative始终为0 玩家正常播放,暂停和停止,但状态值始终为0 发生了什么问题?

编辑1:到目前为止,在Android的Chrome 39以上时,才会显示此错误,没有

回答

1

了!

我foud什么是错的...

  • JavaScript代码
  • 没有错误的URL源没有错误
  • 音频MIME类型
  • 在JQuery-没有错误没有错误ui,Jplayer或JPlayer.swf

错误发生在服务器上!
它使gzip压缩

我用SETENV无gzip的1在.htaccess来解决它

不要GZIP媒体

的所有

禁用GZIP编码媒体文件。媒体文件已经被压缩了,GZIP只会在你的服务器上浪费CPU。

如果您使用GZIP媒体,则Adobe Flash插件将遇到问题。

不要GZIP Jplayer.swf文件。随意GZIP JavaScript的

http://jplayer.org/latest/developer-guide/

这是唯一的参考可能的错误,我发现迄今

注:到目前为止,这个bug是Android Chorme
只所示。如果你正在试验下面的列表中的一些问题在移动浏览器试一试

  • 音频播放,但不是元数据l oaded
  • 无法设置URL尽管网址是正确的,访问
  • 不能触发即使在音频播放timeupdate事件