By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
445,918 Members | 1,974 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 445,918 IT Pros & Developers. It's quick & easy.

Playing an audio file without spawning a new window ...

P: n/a
Hello, I want to play an audio file embedded on my page by clicking on
an audio image and the page change to a new page. Is there a
cross-browser Javascript way to do this? Right now the code I have
is ...

<html>
<head>
<title>Dictionary: homeostasis</title>
<link href="liveink.css" type="text/css" rel="stylesheet"/>
</head>
<body>
<div class="dictionary-area">
<span class="dictionary-word">homeostasis</span>
(<span class="dictionary-pos">Noun</span>)
<br/>
<div class="dictionary-defn">The maintenance of a constant internal
state in a changing environment that is maintained by continually
making adjustments to the internal and external environment.</div>
<a href="homeostasis.mp3" target="new"><img src="audio.gif"
border="0"></a>
<div class="dictionary-close-window"><a
href="javascript:window.close()">Close Window</a></div>
</div>
</body>
</html>

The inconvenience is right now a new window is spawned to play the
audio., which contains the controller for playing the audio (complete
with pause, stop, and play buttons). All my audio clips are less than
3 seconds in length.. How can I play the audio file without launching
the controller? I don't care if there's no way to stop/pause the audio
once it's started.

Thanks for your help, - Dave

Jul 23 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
la***********@zipmail.com wrote:
How can I play the audio file without launching
the controller? I don't care if there's no way to stop/pause the audio
once it's started.


Try this:

<html>
<head>
<title>Make some noize</title>

<script type="text/javascript">
<!--

var Sound = new Object();
Sound.play = function Sound_play(src) {
if (!src) return false;
this.stop();
var elm;
if (typeof document.all != "undefined") {
elm = document.createElement("bgsound");
elm.src = src;
}
else {
elm = document.createElement("object");
elm.setAttribute("data",src);
elm.setAttribute("type","audio/x-wav");
elm.setAttribute("controller","true");
}
document.body.appendChild(elm);
this.elm = elm;
return true;
};

Sound.stop = function Sound_stop() {
if (this.elm) {
this.elm.parentNode.removeChild(this.elm);
this.elm = null;
}
};

//-->
</script>
</head>

<body>
<div
onmouseover="Sound.play('klatschn.wav')"
onmouseout="Sound.stop()">Come over me</div>
</body>
</html>
Jul 23 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.