有网友问说是否能在按钮或是图片按下时有音效?这种效果大多是跟Flash结合在一起,若只用JavaScript来做的话是比较少见,不过要用JavaScript来做的话并不难。
有两种比较简单的方法来做到这样的效果,先来介绍第一种。
第一种是用Embed,方法就跟网页也有动画快递的方法一样,在Div里面放入一个Embed。
让我们先来看Body里面的Code:
我放了一个按钮、一张图片及一个超连结,其中按钮跟超连结被Cilck时跟图片被滑鼠指到时都会触发playSound()函式,并带入不同参数;最后一个Div是用来放制Embed用的(跟网页也有动画快递的方法是一样的)。
接着就是JavaScript:
宣告了一个music阵列用来存放音效档案的路径,因为我把他跟网页放在同一目录下,所以写成酱就可以了。playSound()函式只是在Div中放置一个Embed,比网页也有动画快递的写法更简单吧。
酱就能在按钮跟超连结被按下时及图片被滑鼠指到时出现音效了,这些Event都可以依自己的需求来改,看是要用onClick、onMouseOver或onDblClick什么都行,也可以在计算字(元)数中增加当字数超过限定时出现音效呢!
不过有没有觉得当触发Event时,播放音效的时间有点慢的感觉,这是因为Embed还要再载入音效的关系。所以还有另一种方法来改善这问题。
第二种是用bgSound,这属性是用来替网页加背景音乐用的,我们也可以用来播放音效。
Body里面的Code跟第一种有点不一样:
用了bgSound来取代原先的Div,bgSound中的src属性为音乐的路径,loop表示重覆播放几次。
再来看JavaScript:
这边只有改playSound()函式,只要指定bgSound的src就可以了。怎样~应该是比第一种分法更EZ了吧。试着执行后,应该会发现当触发完Event后出现音效的时间比第一种更即时了吧。
欢迎大家提供下载音效的网站:
http://sound.f....net/范例浏览:
http://abgne.myweb.hinet....011_1.htmlhttp://abgne.myweb.hinet....011_2.html以上内容于2005/10/09发表在小弟的Blog里
http://blog.xuite.net/abgne/diary1/4112955