Какой прием даст наиболее надежную / совместимую звуковую сигнализацию в окне браузера для большинства браузеров - PullRequest
2 голосов
/ 10 июня 2010

Я хочу иметь возможность воспроизводить звук будильника, используя Javascript в окне браузера, желательно с требованием для любых плагинов браузера (Quicktime / Flash).Я экспериментировал с тегом и новым объектом Audio в Javascript, но результаты были неоднозначными:

Browser Test

Как видите, не существует варианта, который работает во всех браузерах.

Мне не хватает трюка, более совместимого с браузерами?

Это мой код:

// mp3 with Audio object
var snd = new Audio("/sounds/beep.mp3");snd.play();

// wav with Audio object
var snd = new Audio("/sounds/beep.wav");snd.play();

// mp3 with EMBED tag
$("#alarmsound").empty().append
('<embed src="/sounds/beep.mp3" autostart="true" loop="false" '+
 'volume="100" hidden="true" width="1" height="1" />');

// wav with EMBED tag
$("#alarmsound").empty().append
('<embed src="/sounds/beep.wav" autostart="true" loop="false" '+
 'volume="100" hidden="true" width="1" height="1" />');

}

Ответы [ 2 ]

1 голос
/ 21 июня 2011

Спасибо за стол.У меня та же проблема.Я не хочу использовать какую-либо вспышку, но она должна работать на любой платформе.HTML 5 поддерживается только новыми браузерами и не может использоваться в качестве решения для всего мира.Все еще слишком много людей, использующих IE 6 :-) Я использовал свойство браузера jQuery для управления различными объектами:

if ($.browser.mozilla || $.browser.opera) {
  var snd = new Audio("beep.wav"); snd.play();
...
if ($.browser.msie) {
  var soundPlayer = $("<embed src='scripts/beep.mp3' hidden='true' autostart='true' loop='false' />");
  $("body").append(soundPlayer);
...
1 голос
/ 10 июня 2010

Вы пробовали звуковую метку HTML5 ?

...