Я использую код Modernizr, как показано здесь http://codepen.io/davidgenetic/pen/FmHaD, чтобы проверить, поддерживается ли автовоспроизведение. Это работает, когда сайт просматривается в первый раз на Safari Desktop (v 9.0.1), но после этого выходит из строя (неправильно завершается, что автовоспроизведение не поддерживается, когда оно есть). Удаление кеша и перезагрузка страницы заставляют его работать снова. В других браузерах (Chrome, IE, Firefox, Opera) это работает отлично. кто-нибудь знает, как решить эту проблему?Проверка автовоспроизведения Modernizr неправильно выполняется на Safari Desktop
Modernizr.addTest('autoplay', function(){
// Audio file data URIs from comments in
// [this gist](https://gist.github.com/westonruter/253174)
// via [mudcube](https://github.com/mudcube)
var mp3 = 'somesong.mp3';
try {
var audio = new Audio();
var src = audio.canPlayType('audio/ogg') ? ogg : mp3;
audio.autoplay = true;
audio.volume = 0;
// this will only be triggered if autoplay works
audio.addEventListener('play', function() {
Modernizr.autoplay = true;
// is there a better way to re-evaluate the html classes added by Modernizr?
var root = document.getElementsByTagName('html')[0];
root.classList.remove('no-autoplay');
root.classList.add('autoplay');
// or if you're using jQuery:
// $('html').toggleClass('no-autoplay autoplay');
}, false);
audio.src = src;
} catch(e) {
console.log('[AUTOPLAY-ERROR]', e);
}
return false;});
Невозможно воспроизвести код, предоставленный вами. Запуск OSX 10.10.5 с Safari версии 9.0.2 (10601.3.9). Всегда отображается для меня. – Ohgodwhy