jQuery jPlayer не может быть воспроизведен после первого запуска в Safari

После настройки и запуска jPlayer 2.0.0 в Firefox 3.6.13, когда все работает гладко, тот же код не работает в Safari 5.0.3. Что я делаю, так это создаю jPlayer, прислушиваюсь к "завершенному" событию, чтобы перезапустить его. Вот код:

$(document).ready(function(){
    $("#loopplayer").jPlayer({
        ready: function () {$(this).jPlayer("setMedia", {mp3: "/static/audio/brokentech.mp3"});
        },
        swfPath: "/static/swf",
        supplied: "mp3",
        preload: true,
        });
    $("#loopplayer").bind($.jPlayer.event.ended, function(){
      $(this).jPlayer("play" );
     });
    });

Что происходит в Safari: индикатор выполнения показывает NaN как длину трека, и он останавливается после однократного запуска. Когда я удаляю прослушиватель событий и перезагружаю страницу, я могу запустить jPlayer один раз (снова с NaN в качестве длины дорожки), после того, как он будет запущен, когда я не смогу его перезапустить. Что-то не так с моим кодом или ошибка в jP2?


person marue    schedule 01.02.2011    source источник
comment
Meybe файл обслуживается посредством сжатия gzip, и он не позволяет браузеру получить метаданные файла?   -  person Please treat your mods well.    schedule 01.02.2011


Ответы (3)


Смотри сюда:

http://groups.google.com/group/jplayer/tree/browse_frm/month/2010-05/bb4306c1850108b1?rnum=71&_done=/group/jplayer/browse_frm/month/2010-05%3F

Есть некоторые mp3-файлы, у которых есть проблемы с jPlayer из-за того, как файлы обслуживаются. Браузер некорректно извлекает метаданные для ответа, сжатого с помощью gzip.

person Please treat your mods well.    schedule 01.02.2011
comment
Этот подходит лучше, так как у меня нет этой проблемы при обслуживании только .ogg и .wav. Но это не связано с gzip, так как сжатие не применяется. - person marue; 01.02.2011
comment
Хм, при использовании из локальной копии работает нормально. Похоже, ты тоже был прав насчет подачи. Может ли у этого быть другие причины, кроме сжатия? Есть ли способ получить доступ к метаданным, т.е. загружаете полный файл, включая метаданные? - person marue; 01.02.2011
comment
Для проверки заголовков вы можете использовать браузер, который показывает заголовки http, например Mozilla Firefox с расширением firebug (F12) или Google Chrome (щелкните правой кнопкой мыши в любом месте - ›Проверить элемент -› вкладка «Ресурсы». Надеюсь, это поможет :) - person Please treat your mods well.; 02.02.2011

Попробуйте переустановить медиа в событии ended.

Это работает в Safari 7.0, который воспроизводит звук только один раз и отключает звук для последующих попыток воспроизведения без взлома.

$(function() {
    $('#jp').jPlayer({
        ready: function() {
            // Set the media when jPlayer is ready.
            $(this).jPlayer("setMedia", {mp3: "/audio/demo.mp3"});
        },
        ended: function() {
            // Do it again after it finishes playing.
            $(this).jPlayer("setMedia", {mp3: "/audio/demo.mp3"});
        },
    });
});
person Rockallite    schedule 15.12.2013

вы указываете swfpath следующим образом или используйте полный путь к домену {swfPath: "[http: // localhost / jplayer / js /]", предоставленный: "webmv, ogv, m4v, oga, mp3"}

person Ahmed Awan    schedule 06.11.2013