Javascript 哪个jPlayer事件指定开始播放的能力?

Javascript 哪个jPlayer事件指定开始播放的能力?,javascript,html,audio,jplayer,Javascript,Html,Audio,Jplayer,我有一个基本的jPlayer设置,可以播放来自AWSS3的(150MB)音频文件。我的设置基本上是这样的 jQuery(function() { var $player, jPlayerDefaults, progressCount; $player = $('<div>'); progressCount = 0; jPlayerDefaults = { ready: function(e) { console.log

我有一个基本的jPlayer设置,可以播放来自AWSS3的(150MB)音频文件。我的设置基本上是这样的

  jQuery(function() {
    var $player, jPlayerDefaults, progressCount;

    $player = $('<div>');
    progressCount = 0;
    jPlayerDefaults = {
      ready: function(e) {
        console.log("player ready");

        $player.jPlayer('setMedia', {
          mp3: 'http://s3-eu-west-1.amazonaws.com/some/file.mp3'
        });

        return $player.jPlayer('play', 1234);
      },

      seeking: function(e) {
        return console.log("seeking");
      },

      seeked: function(e) {
        return console.log("seeked");
      },

      canplay: function(e) {
        console.log('canplay');
      },

      progress: function(e) {
        return console.log("progress", progressCount += 1);
      },

      playing: function(e) {
        return console.log("playing");
      },

      error: function(e) {
        return console.log("Error loading audio.", e);
      },

      supplied: 'mp3',
      preload: 'auto'
    };

    $player.jPlayer(jPlayerDefaults);
  });
我只在
搜索事件后听到音频播放。此事件发生在
canplay
事件之后很长一段时间(分钟)

这是预期的行为还是我做错了什么?另外,jPlayer是否忠实地遵循HTML5的标签规范


编辑:如果您想知道,AWS S3确实接受字节范围请求。

我认为问题可能在于:
返回$player.jPlayer('play',1234)您要求播放机在媒体可搜索到该点时开始播放,请尝试

返回$player.jPlayer('play')
返回$player.jPlayer('play',5)


这里有更多详细信息参数下的小注释,不容易找到它

我在主干网中使用的示例:

$(this.$el.jPlayer()).bind($.jPlayer.event.canplay, _.bind(function (event) {
    that.doCanPlay();
});

当用户使用洗涤器小部件时,
是否已查找
?也许它会在下载或播放时间结束时触发一次?我不确定“洗涤器小部件”是什么?你能尝试记录“canplaythrough”吗?它似乎在等待整个文件加载
canplaythrough
发生在
canplay
之后。但是
1234
是用户选择的时间。如果我不能发挥这一点,那对我没有好处。检查aws是否支持接受范围,在firebug中查看服务器的响应是否在其标题中包含接受范围。它确实支持。我以前检查过。现在我想起来了,我要把它加到问题上。
$(this.$el.jPlayer()).bind($.jPlayer.event.canplay, _.bind(function (event) {
    that.doCanPlay();
});