2

我到处搜索我的问题并找到了一些答案,但是当我实施它时似乎没有用。

这是我的简单代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Audio Test</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript">

  $(document).ready(function(){
    play_audio();
  });

  $(document).on("click", "#play-btn", function(){
    play_audio();
  });

  function play_audio(){
    var notify = document.getElementById("sound-notification");
    notify.play();
  }

</script>

</head>

<body>

<audio id="sound-notification" src="beep.ogg"></audio>

<button id="play-btn">Play</button>

hello world

</body>
</html>

有两种方法可以在页面加载后和用户单击按钮时生成音频声音。

在 FF 和 Chrome 中一切正常,但在 Safari 中不行(我有 5.1.7 版)

我不确定我是否做错了什么或什么。

任何帮助都感激不尽。

谢谢。

4

3 回答 3

0

这对我在 Drupal 上的所有浏览器中的元素上添加点击声音很有用:

    var snd = new Audio(Drupal.settings["basePath"] + "sites/all/themes/your_theme/click.ogg");
    var sndSafari = new Audio(Drupal.settings["basePath"] + "sites/all/themes/your_theme/click.mp3");

    var is_safari = navigator.userAgent.indexOf("Safari") > -1;

    jQuery('body a').click(function(){
         if(is_safari){
            sndSafari.play();
         }else{
            snd.play();
         }
    }); 

这是额外的信息,以防有人需要它:

Firefox 3.5+ >> 支持 .ogg、.wav

IE9+ >> 支持.mp3

Chrome 6+ >> 支持 .ogg、.mp3、.mp4

Safari 5+ >> 支持 .mp3、.mp4、.wav

Opera 10.5+ >> 支持.ogg、.wav

确保正确添加您的声音路径(我使用的是 drupal api)

于 2013-05-06T15:40:24.987 回答
0

您应该使用 html5 doctype 使页面将其解释为 HTML5 文档。

<!doctype html>

而不是你用过的那种。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

更新代码

<script type="text/javascript">

$(function() {
$(document).on("click", "#play-btn", function(){
    play_audio();
  });

  function play_audio(){
    var notify = document.getElementById("sound-notification");
    notify.play();
  }

});

</script>
于 2013-04-04T07:15:59.097 回答
0

我终于让它工作了...

<audio id="sound-notification">
  <source scr="beep.ogg" type="audio/ogg"></source>
  <source src="beep.mp3" type="audio/mpeg"></source>
</audio>

希望这会帮助任何人。

于 2013-04-17T01:03:10.590 回答