user818836
user818836

Reputation: 51

Javascript mouseover audio not playing in Safari

I can't get my mouseover audio to play in Safari. It works in Chrome, ||Opera, Camino, Firefox and IE. I'm using this in the HTML:

<a onmouseover="mouseoversound.playclip()" onclick="clicksound.playclip()" href="#">link/a>

With this javascript in my page footer:

<script>

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

//** Usage: Instantiate script by calling: var uniquevar=createsoundbite("soundfile1",                 "fallbackfile2", "fallebacksound3", etc)
//** Call: uniquevar.playclip() to play sound

var html5_audiotypes={ //define list of audio file extensions and their associated audio types. Add to it if your specified audio file isn't on this list:
"mp3": "audio/mpeg",
"mp4": "audio/mp4",
"ogg": "audio/ogg",
"wav": "audio/wav"
}

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 two sound clips with 1 fallback file each:

var mouseoversound=createsoundbite("http://graphicviolence.co.uk/sounds/typewriter.ogg", "http://graphicviolence.co.uk/sounds/typewriter.mp3")
var clicksound=createsoundbite("http://graphicviolence.co.uk/sounds/bell.ogg", "http://graphicviolence.co.uk/sounds/bell.mp3")

</script>

Anybody know why Safari will not execute this? See my website at: http://graphicviolence.co.uk

Thanks Tim, London

Upvotes: 1

Views: 573

Answers (1)

user1913025
user1913025

Reputation: 35

I am using the exact same script on my project , it works perfectly fine one both Chrome and Safari. But when it comes to iPhone and iPad Safari, it screwed up too. I have tested yours, it really doesn't work . Perhaps you may want to check on your script plug in

Upvotes: 1

Related Questions