[英]How to switch the radio station with javascript
我是编程和尝试使其工作的新手。 我想为用户提供选择他们想收听的广播电台的选项...这是我想出的,但是不起作用,任何帮助都值得赞赏:
<script language="javascript" type="text/javascript">
// You can place JavaScript like this
document.getElementById("radiostations").selectedIndex = 0;
document.getElementById("radiostations").onchange = resetStation;
function resetStation(){
objPlayer = document.getElementById("mediaPlayer");
// obj.Settings.volume = 75
newStation = document.getElementById("radiostations");
objPlayer.URL=newStation.options[newStation.selectedIndex].value; // playback this file
objPlayer.controls.play(); // play what ever file is loaded
}
</script>
<form name="mediaPlay">
<select name="radiostations" size="1">
<option selected value="http://listen.radionomy.com/smoothmusicradio">Smooth Music</option>
<option value="http://www.urbanhotradio.com/hiphop/music/stream.asx">Hip-Hop</option>
<option value="http://www.orsradio.com/asx/rnbclassic.asx">R&B Soul</option>
</select>
<noscript>
<input type="button" value="Play Now!"
onClick="location=document.mediaPlay.radiostations.options
[document.mediaPlay.radiostations.selectedIndex].value">
</noscript>
</form>
<OBJECT ID="MediaPlayer" WIDTH="100%" HEIGHT="100" CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
STANDBY="Loading Windows Media Player components..." TYPE="application/x-oleobject">
<PARAM NAME="FileName" VALUE=newStation.options[newStation.selectedIndex].value>
<PARAM name="ShowControls" VALUE="true">
<param name="ShowStatusBar" value="true">
<PARAM name="ShowDisplay" VALUE="false">
<PARAM name="autostart" VALUE="false">
<EMBED TYPE="application/x-mplayer2" SRC=newStation.options[newStation.selectedIndex].value NAME="MediaPlayer"
WIDTH="100%" HEIGHT="100" ShowControls="1" ShowStatusBar="1" ShowDisplay="0" autostart="0">
</EMBED>
</OBJECT>
我不确定这些是否是唯一的问题,但是您的JS有两个明显的问题:
您正在使用document.getElementById("radiostations")
来引用您的select元素,但是该元素没有id
属性-您需要在标记中添加id="radiostations"
:
<select id="radiostations" name="radiostations" size="1">
您的脚本块位于表单之前,因此当JS运行时,浏览器尚未解析选择内容-因此,它将无法访问select元素(即使解决了id问题)。 您可以通过以下方式解决此问题:将脚本块移至主体底部(或至少在select元素之后),和/或将代码放入onload
处理程序中。
(我也注意到在您的<noscript>
块中,您有一个尝试使用JavaScript的按钮-无法使用...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.