正在添加音频以单击事件

Adding audio to click event

本文关键字:单击 事件 音频 添加      更新时间:2023-12-20

我想在我正在创建的游戏上的按钮上添加一个声音剪辑。目前它什么都不做,我不知道为什么。

现在在剧本里我有。。。

var audio = $(".mysoundclip")[0];
$(".minibutton").onclick(function() {
    audio.play();
});

在HTML中,我有。。。

<audio id="mysoundclip" preload="auto">
    <source src="http://www.wav-sounds.com/cartoon/bugsbunny1.wav"></source>
</audio>

然后我有了.mibutton.的CSS

有什么想法为什么它不起作用吗?

您的jQuery中有一些简单的错误。

HTML

<audio id="mysoundclip" preload="auto">
    <source src="http://www.wav-sounds.com/cartoon/bugsbunny1.wav"></source>
</audio>
<button type="button">play</button>

jQuery

var audio = $("#mysoundclip")[0];
$("button").click(function() {
    audio.play();
});​

Fiddle:http://jsfiddle.net/iambriansreed/VavyK/

也许我太多疑了。。但是

http://www.sound-effect.com/sounds1/animal/Saf/Tiger1.wav"在此服务器上找不到请求的URL"

如果这只是一个拼写错误,你还应该试着弄清楚浏览器能够播放哪些音频类型:

myApp.htmlAudio = (function _htmlAudioCheck() {
    var elem = document.createElement('audio'),
        bool = false;
    try {
        if( !!elem.canPlayType ) {
            bool = new Boolean(bool);
            bool.ogg = elem.canPlayType('audio/ogg; codecs="vorbis"');
            bool.mp3 = elem.canPlayType('audio/mpeg;');
            bool.wav = elem.canPlayType('audio/wav; codecs="1"');
            bool.m4a = ( elem.canPlayType('audio/x-m4a;') ||      elem.canPlayType('audio/aac;'));
        }
    } catch(e) { }
    return bool;
}());

现在我们可以像一样进行检查

if( myApp.htmlAudio && myApp.htmlAudio.wav ) {
}

如果浏览器例如能够回放CCD_ 2文件。

然而,我从未见过audio elements的嵌套source element。如果有的话,应该命名为track。但您在这里并不真正需要它,您可以在audio element本身上有一个src属性。示例:http://jsfiddle.net/5GUPg/1/