2016-10-19 5 views
2

Использование OSX Safari 9.1.1, я получаю проблему, как описано в названии: свойство paused всегда верно, даже если звук воспроизводится.OSX Safari (9.1.1) Постоянный флаг звукового объекта «приостановлен»

создать звуковой объект как так

this.audio = new Audio(); 
this.audio.autoplay = false; 
this.audio.preload = 'metadata'; 
this.audio.src = 'https://example.com/audio.mp3'; 
this.audio.load(); 

И я испытал это так:

console.debug(`Before play: ${this.audio.paused}`); 
this.audio.play(); 
console.debug(`After play: ${this.audio.paused}`); 

Свойство paused всегда будет истинным. Даже когда я позвонил play().

Любые идеи?

+0

всегда нравится, даже если вы вызываете 'audio.paused' в консоли через некоторое время после? в latests [revs of whatwg] (https://html.spec.whatwg.org/multipage/embedded-content.html#dom-media-play) 'HTMLMediaElement.play()' возвращает Promise (не в w3c) что делает его асинхронным, но я не знаю о последнем Safari. https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/play – Kaiido

+0

Yup, возвращает 'true', даже когда он на самом деле играет. – Travo

+0

На самом деле 9.1.1 не является последним. Я не могу воспроизвести 9.1.3 (последнее на macos 10.9), а последнее - 10.0. (доступно только в macos10 +) Итак, попробуйте обновить браузер: -P – Kaiido

ответ

0

Оказалось, что это ошибка Safari 9.1.1.

 Смежные вопросы

  • Нет связанных вопросов^_^