一、设计思想和实现方法
1.首先在HTML中建立<EMBED>嵌入标记,嵌入可供选择的曲目文件,
*.wav、*.au、*.mid等,代码如下:
<EMBED NAME="MUSIC1" SRC="曲目1的声音文件" Loop=-1
AUTOSTART=false Hidden=true MASTERSOUND>
<EMBED NAME="MUSIC1" SRC="曲目2的声音文件" Loop=-1
AUTOSTART=false Hidden=true MASTERSOUND>
代码中Loop=-1让曲目重复播放
AUTOSTART=false 禁止曲目嵌入后自动播放
Hidden=true将其隐藏起来,不可见
2.借助<SELECT>...</SELECT>和<OPTION>...</OPTION>建立供选择
曲目的下拉列表框,
<form name="my_music" width=300>
<select name="opt" size=1 onChange="
javascript:my_sound()">
<option VALUE="0" SELECTED>------无------</option>
<option VALUE="1">曲目1</option>
<option VALUE="2">曲目2</option>
</form>
3.转到HTML文档的<HEAD>标记中编写实现曲目更换的函数,具体如下:
function my_sound()
{
if (msie4) //是否为IE 4.0以上版本
{
if (document.my_music.opt.value=="1") //选择曲目1
{
document.NAME2.stop();//关闭另一支曲目
document.NAME1.play();//播放曲目
}
else
{
if (document.my_music.opt.value=="2")//选择曲目2
{
document.NAME1.stop();
document.NAME2.play();
}
else //取消背景音乐
{
document.NAME1.stop();
document.NAME2.stop();
}
}
}
}
上述程序是在IE浏览器中的实现方法,如果要求同时适用Netscape只需增
加少量的判断语句,播放语句改为document.NAME.run()即可。
4.在HTML文档的<BODY>标记中增加onLoad="check_ok",对浏览器认证变量
msie4(可自由设定变量名)进行初始化,满足程序对浏览器的要求,防止在浏览
器达不到要求时出现异常。
二、注释详尽、程序完整的示例程序清单
<html>
<head>
<title>活动背景音乐</title>
<script language="JavaScript">
<!--
var msie4=false;
//定义检测浏览器的函数
function check_ok()
{
var nav=window.navigator.userAgent;
var ie_ok=nav.indexOf("MSIE");
if (ie_ok>0)//是Microsoft Internet Explorer
msie4=parseInt(nav.substring(ie_ok+5,nav.indexOf(".",ie_ok)))>=4; // IE 4.0以上版本
}
//定义更改背景音乐的函数
function my_sound()
{
if (msie4) //是否为IE 4.0以上版本
{
if (document.my_music.opt.value=="1") //选择曲目1
{
document.music2.stop();//关闭另一支曲目
document.music1.play();//播放曲目
}
else
{
if (document.my_music.opt.value=="2")//选择曲目2
{
document.music1.stop();
document.music2.play();
}
else //取消背景音乐
{
document.music1.stop();
document.music2.stop();
}
}
}
}
//-->
</script>
</HEAD>
<BODY onLoad="check_ok()">
<embed name="music1" src="01.mid" loop=-1 autostart=false hidden=true mastersound>
<embed name="music2" src="02.mid" loop=-1 autostart=false hidden=true mastersound>
<h1>活动的背景音乐,请您自由选择</h1>
<form name="my_music" width=300>
<select name="opt" size=1 onChange="
javascript:my_sound()">
<option VALUE="0" SELECTED>------无------</option>
<option VALUE="1">曲目1</option>
<option VALUE="2">曲目2</option>
</form>
</body>
</html>
关键词:为页面添加活动的背景音乐,可改为互动下啦菜单!