【问题标题】:Add click noise to buttons为按钮添加点击噪音
【发布时间】:2012-03-26 02:17:52
【问题描述】:

我的网站上有 3 个 div,每个 div 都是一个页面,可以像幻灯片一样显示。请在此处查看函数和代码:http://jsfiddle.net/jasper/EXfnN/29/

现在我需要在第二页添加一些按钮噪音,例如每次点击 ABC/National/Other 链接时都应该有点击噪音。如何为按钮添加点击噪音?

一个合适的 Firefox 插件可以工作,因为这个网站是一个信息亭而不是公众。但是我尝试了 Firefox Noise Addon,但它仅在链接链接到不同页面时才有效,而不是当链接在同一页面上时,如我的情况。

有什么方法可以为第二页上单击的每个按钮添加按钮噪音?如果是这样,我该怎么做?任何代码/示例/教程都会有很大帮助。

提前致谢。

编辑:感谢您的所有回复。在你的帮助下,我已经成功了一半。目前有一个电子邮件提交功能,当单击一个按钮时,也可以将页面滑动到下一个。

请问有人可以将下面这些有用的代码与我的函数here 混合使用吗?一键功能有点丢失,但有两个事件(声音和提交电子邮件)谢谢!

这是附加的电子邮件提交 js。

function abcSubmit() {
$.ajax({
    type: "POST",
    url: "email.php", 
    data: "abc=abc", 
});
}

function nationalSubmit() {
$.ajax({
    type: "POST",
    url: "email.php", 
    data: "national=national", 
});
}

function otherSubmit() {
$.ajax({
    type: "POST",
    url: "email.php", 
    data: "other=other"
});
}

email.php 就像

if(isset($_POST['abc']))
{ 
$to      = 'abc@site.com';
$subject = 'Entrance notice';
$message = 'Hello ABC.';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);

}

【问题讨论】:

  • 不要指望所有用户都安装那些有助于听到声音的插件
  • 嗨,Shyju,感谢您的快速响应,firefox 插件可以工作,因为我忘了提到这是用于信息亭屏幕而不是公共网站。知道如何添加点击声音吗?谢谢。
  • 顺便说一句,我知道这不是重点,但是当一个网页意外开始接管我的扬声器时,我通常会立即离开。

标签: javascript jquery css firefox firefox-addon


【解决方案1】:

您可以使用新的 HTML5 audio 标签来播放声音。 这是一个示例(它一次预加载并允许一种声音。适用于大多数浏览器)。

<input type="button" onclick="playSound()" value="Click me!" />

<script>

    var sound = document.createElement("audio");

    var src = document.createElement("source");
    src.src = "sound.wav";
    sound.appendChild(src);
    //More srcs...

    sound.load();
    sound.volume = 0;
    sound.play();

    function playSound() {

        sound.volume = 1;
        sound.currentTime = 0.01;
        setTimeout(function(){sound.play();},1);

    }

</script>

另外...如果用户没有预料到,请不要播放声音;)

【讨论】:

  • 您好杰弗里,感谢您的回复。我只是尝试一下您的代码,单击按钮时正在播放声音,谢谢,但我需要告诉按钮提交电子邮件并像我的代码一样滑动到下一页jsfiddle.net/jasper/EXfnN/29如何保持相同的功能和使声音工作?非常感谢:)
  • 另请参阅上面的 onclick="abcSubmit()" 函数的附加代码。如何将您的代码与现有代码混合?任何方向/帮助表示赞赏。谢谢。
  • @SamIAm onclick 函数可以执行多个函数。例如:onclick="playSound();submitEmail();slide();
【解决方案2】:

这是一些加载音频的代码,只需将声音与您的按钮点击联系起来。 Cross-platform, cross-browser way to play sound using jQuery 1.4?

<audio id="soundHandle" style="display: none;"></audio>
<script>
  soundHandle = document.getElementById('soundHandle');
  soundHandle.src = '/blah/blah.mp3';
  soundHandle.play();
</script>

【讨论】:

  • 嗨@usr1289347 和Blender,感谢您的回复,我试了一下您的代码,它在页面加载时播放声音,我已经完成了一半,谢谢。当在 mo 上单击 onclick="nameSubmit()" 功能/按钮时,将发送一封电子邮件,并且页面滑动到下一页。请问如何将您的代码与我现有的功能混合在一起?我在上面添加了我的提交代码。谢谢!
【解决方案3】:

Playing sounds in Javascript.

相关引述:

在 Firefox、Safari 和 Google Chrome 中,音频播放功能 依赖于 Apple QuickTime 等插件。使用音频插件 安装后,您将需要一个 OBJECT 标记供浏览器激活 插入。下面是一个 OBJECT 标签的例子:

<OBJECT DATA="audioURL.mid" TYPE="audio/midi" TITLE="Description" WIDTH=250 HEIGHT=20>   
<PARAM NAME=autostart VALUE=true>       
<PARAM NAME=hidden VALUE=false> </OBJECT>

您还可以使用带有 SoundManager 项目等插件的 Flash 播放声音。

【讨论】:

  • 请提供相关内容,不要只提供链接。您可以逐字引用您的来源,因为您已经给出了归属。这个网站的想法是在这里而不是在别处找到答案。追链游戏玩了太多次了,不好玩。
猜你喜欢
  • 1970-01-01
  • 2017-10-16
  • 2020-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-24
  • 2019-03-18
  • 1970-01-01
相关资源
最近更新 更多