Как запустить песню в jPlayer в середине при загрузке - PullRequest
0 голосов
/ 19 мая 2011

Привет, у меня есть jPlayer, встроенный в страницу

$(document).ready(function(){
      $("#jquery_jplayer_1").jPlayer({
        ready: function () {
          $(this).jPlayer("setMedia", {
            mp3: playList[0]
          }).jPlayer("play");
        },
        swfPath: "js",
        supplied: "mp3"
      });
    changeSong(0);
  $("#jquery_jplayer_1").bind($.jPlayer.event.ended + ".jp-repeat", function(event) { // Using ".jp-repeat" namespace so we can easily remove this event
  });

});

Здесь список переменных массива предварительно определен. Также я связываю событие, чтобы изменить песню, когда она достигает конца.

Эти вещи работают отлично.

Я хочу воспроизвести песню не с начала, а, скажем, с 50%, и она должна автоматически воспроизводиться.

.jPlayer ( "играть");

часть в коде авто играет роль. Как мне переместить его на 50%? это следует сделать, как только он начнет играть, и пользователь не заметит этого.

Ответы [ 2 ]

0 голосов
/ 19 мая 2011

Возможно, это не изящное решение, но это то, что я сделал

$(document).ready(function(){
      $("#jquery_jplayer_1").jPlayer({
        ready: function () {
          $(this).jPlayer("setMedia", {
            mp3: playList[0]
          }).jPlayer("play");
        },
        swfPath: "js",
        supplied: "mp3"
      });
    changeSong(0);
  $("#jquery_jplayer_1").bind($.jPlayer.event.ended + ".jp-repeat", function(event) { // Using ".jp-repeat" namespace so we can easily remove this event
  });
  pushForwardTimeInSong();
//other codes
//
//
function pushForwardTimeInSong()
{
    setTimeout("$('#jquery_jplayer_1').jPlayer('playHead', 50);",2000);
}

Я вызвал новую функцию и позволил ей сдвинуть голову игрока после 2 сек.

0 голосов
/ 19 мая 2011

Должно быть что-то вроде этого, но что делает функция changeSong?

попробуйте это:

 $(document).ready(function(){
      $("#jquery_jplayer_1").jPlayer({
       setInterval( function () {
         var duration = $(this).duration;
          $(this).jPlayer("setMedia", {
            mp3: playList[0]
          }).jPlayer("play");
        }, duration-10000),
        swfPath: "js",
        supplied: "mp3"
      });
    changeSong(0);
  $("#jquery_jplayer_1").bind($.jPlayer.event.ended + ".jp-repeat", function(event) { // Using ".jp-repeat" namespace so we can easily remove this event
  });

});

Это запустит музыку за 10 секунд до запуска другого.

...