Основное обновление в конце сообщения
Я инициализирую jPlayer со следующим кодом. Он отлично работает во всех современных браузерах и на мобильных устройствах.
$("#jquery_jplayer_1").jPlayer({
supplied: "mp3",
swfPath: "/js/jQuery.jPlayer.2.4.0",
solution: "html,flash",
errorAlerts: true,
ended: function () {
console.log('ended event fired');
$.getScript('/js/random_show.js.php');
}
});
Однако при тестировании в IE 8 и IE 7 я получаю следующую ошибку от резервного SWF-плеера:
Если я открою mysite.com/js/jQuery.jPlayer.2.4.0, SWF загрузится без проблем. Я попробовал позволить сайту сидеть некоторое время, чтобы узнать, помогло ли это. Это не.
По предложению пробовали работать с рабочим URL-адресом, но теперь имеют ту же самую ошибку, что и полный путь. Путь из браузера после загрузки swf так определенно правильный. Я вложил код здесь, но SO возражал против тела сообщения, содержащего URL-адрес... Вот новое сообщение об ошибке.
Еще одно обновление: Попробовал ссылку непосредственно на копию SWF, размещенную jPlayer на одно предложение Josh D ниже. Такая же ошибка. Обновлено до 2.5.0 с 2.4.0. Такая же ошибка.
Как я могу получить резервную работу?
Основное обновление 12/12/2013
Я установил здесь копию песочницы: http://www.itsneworleans.dreamhosters.com/shows/happy-hour Хит Слушайте, чтобы увидеть сообщение об ошибке.
Я удалил решение HTML5 и использовал только Flash. Это позволяет любому браузеру инициировать ошибку.
После отклонения ошибки Отладчик Chrome сообщает о состоянии 200 для swf, поэтому это не проблема 404 swf. У кого-нибудь есть идея повторной ошибки?
После устранения ошибки ниже.
Сообщение об ошибке Chrome
Я добавил функцию jPlayer.ready() с выходом консоли для моей инициализации. Я обнаружил, что он был запущен только тогда, когда игрок уже был видимым, и не было жалобы на то, что решение Flash не будет найдено.
После некоторого поиска, основанного на этом результате, я нашел этот пост:
"проверьте свои стили, если ваш # jquery_jplayer_1 или его родительский элемент имеет display = none, готовое событие никогда не срабатывает в таких браузерах, как opera или firefox. Я имею в виду, что объект Flash не может быть скрыт".
То, что происходило, заключалось в том, что решение jPlayer Flash не загружалось, потому что у моего плеера нет значения.
Итак, теперь у меня есть внеэкранный проигрыватель через отрицательный margin-top, и вместо анимации высоты я обновляю margin-top. Сейчас все работает.
просто напишите "../js/jQuery.jPlayer.2.4.0", вместо этого он даст вам правильное решение. Я сталкиваюсь с той же проблемой в JWPlayer, и она работает так.
Если прямой переход к пути в вашем браузере работает, и все же он не работает внутри скрипта. Это может быть:
application/x-shockwave-flash
Если вы хотите опубликовать демонстрационную ссылку, мы должны ее отладить.
swfPath
этим http://www.jplayer.org/latest/js/Jplayer.swf
Вы пытались использовать swfPath: " http://jplayer.org/2.5.0/js/ " вместо этого?
Укажите абсолютный путь вашей папки swf, например, www.mysite.com/js/jQuery.jPlayer.2.4.0
. Это поможет вам проверить, является ли swfPath, который вы дали, неправильным или чем-то еще.