繁体   English   中英

在HTML中使用JavaScript函数 <area> 点击播放音频

[英]Using a JavaScript function in an HTML <area> to play audio on click

我正在尝试使其工作,以便如果用户单击指定区域,则将播放声音(根本不更改屏幕上显示的内容)。 现在,我正在使用带有<map><area>标记的<map>键盘图像,这些标记与键盘的按键相对应。 到目前为止,我已经为三个键制作了<area>标签,使用了不同的方法来尝试使声音在单击时播放,但是它们似乎都不起作用。 如果可能,我希望能够使用JavaScript函数来实现此功能,就像我尝试使用前两个键盘键一样。

<html>
<script language="javascript" type="text/javascript">
   function playSound(soundfile) {
     var audio = new Audio("+soundfile+");
     audio.play();
   }
</script>

<body>

<img src="http://upload.wikimedia.org/wikipedia/commons/thumb/1/15/PianoKeyboard.svg/250px-PianoKeyboard.svg.png" width="500" height="300" alt="keyboard" usemap="#keyMap">

<map name="keyMap">
   <area shape="rect" coords="0,200,72,300" alt="C" href="JavaScript: playSound('http://upload.wikimedia.org/wikipedia/en/4/45/ACDC_-_Back_In_Black-sample.ogg');">
   <area shape="rect" coords="72,200,144,300" alt="D" href="#" onclick=playSound('http://upload.wikimedia.org/wikipedia/en/4/45/ACDC_-_Back_In_Black-sample.ogg')>
   <area shape="rect" coords="144,200,216,300" alt="E" href="#audio">
</map>

<audio src="http://upload.wikimedia.org/wikipedia/en/4/45/ACDC_-_Back_In_Black-sample.ogg">

</body>
</html>

你做得很好。 前两个案例效果很好。 只是一个小错误:从函数中删除引号:

 function playSound(soundfile) {
     var audio = new Audio(soundfile);
     audio.play();
   }

http://jsfiddle.net/k3c68/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM