2011-10-30 59 views
0

如何获得以下脚本来播放多种声音?我可以让它只玩一个。多个来源

<script> 

// Mouseover/ Click sound effect- by JavaScript Kit (www.javascriptkit.com) 
// Visit JavaScript Kit at http://www.javascriptkit.com/ for full source code 

var html5_audiotypes={ //define list of audio file extensions 
"mp3": "audio/mpeg", 
"ogg": "audio/ogg", 
} 

function createsoundbite(sound){ 
var html5audio=document.createElement('audio') 
if (html5audio.canPlayType){ //check support for HTML5 audio 
    for (var i=0; i<arguments.length; i++){ 
     var sourceel=document.createElement('source') 
     sourceel.setAttribute('src', arguments[i]) 
     if (arguments[i].match(/\.(\w+)$/i)) 
      sourceel.setAttribute('type', html5_audiotypes[RegExp.$1]) 
     html5audio.appendChild(sourceel) 
    } 
    html5audio.load() 
    html5audio.playclip=function(){ 
     html5audio.pause() 
     html5audio.currentTime=0 
     html5audio.play() 
    } 
    return html5audio 
} 
else{ 
    return {playclip:function(){throw new Error("Your browser doesn't support HTML5 audio unfortunately")}} 
    } 
} 

//Initialize sound clips with 1 fallback file each: 

var mouseoversound=createsoundbite("/messages4u/2011/images/october/laugh.ogg", "/messages4u/2011/images/october/laugh.mp3") 

</script> 

HTML:

<area onmouseover="mouseoversound.playclip()" /> 

回答

2

那么你只有一个<audio>元素,你怎么能指望它发挥比一个声音吗?

如果你想要两个声音效果,你需要两个元素<audio>(你可以改变只有一个元素的来源,但它的混乱,可能会无法正常工作你想怎么它)。