Forum Moderators: not2easy
Thanks a bunch.
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var playstate = 1;
shuffle = 0; // set to 0 to always play first video in list
// set to 1 to randomly choose the first video to play
videos=new Array();
videos[0]="archive/DSUEP1.wmv";
videos[1]="archive/DSR.EP2.wmv";
videos[2]="archive/DSR.EP3.wmv";
videos[3]="archive/DSR.EP4.wmv";
videos[4]="archive/DSR.EP5.wmv";
if (shuffle == 1) {
var randsg = Math.floor(Math.random()*videos.length);
document.dsrmotion.FileName = videos[randsg];
document.dsrmotion.scr = videos[randsg];
document.forms['form'].playlist.options[randsg].selected = true;
}
function play(list) {
if (playstate == 2) {
document.dsrmotion.Play();
} else {
var snum = list.options[list.selectedIndex].value
document.dsrmotion.FileName = videos[snum];
document.dsrmotion.scr = videos[snum];
}
playstate = 1;
}
// End -->
</Script>
<object width="220" height="160" id="dsrmotion" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" type="application/x-oleobject" standby="Loading Microsoft Windows Media Player components..." classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95">
<param name value>
<param name="ShowControls" value="0">
<param name="ShowStatusBar" value="0">
<param name="ShowDisplay" value="0">
<param name="DefaultFrame" value="Slide">
<param name="Autostart" value="1">
<param name="Loop" value="False">
<embed width="220" height="160" id="dsrmotion" type="video/x-ms-asf-plugin" transparentatstart="true" SendOpenStateChangeEvents="true" showstatusbar="1" showdisplay="0" autosize="0" autorewind="0" animationstart="0" autostart="0" showcontrols="0">
</object>
<form name="form">
<select style="FONT-SIZE: 8pt; BACKGROUND:#transparent; WIDTH: 150px; COLOR: #33666; font-face: verdana" name="playlist" size="1">
<option value="0">Video 1</option>
<option value="1">Video 2</option>
<option value="2">Video 3</option>
<option value="3">Video 4</option>
<option value="4">Video 5</option>
</select><br>
<img TYPE="BUTTON" NAME="darkplay" VALUE="play" TITLE="Play" OnClick="play(document.forms['form'].playlist);" src="images/playbutton.jpg" width="27" height="26">
<img TYPE="BUTTON" NAME="darkpause" VALUE="pause" TITLE="Pause" onClick="document.dsrmotion.Pause(); playstate=2;" src="images/pausebutton.jpg" width="30" height="26">
<img TYPE="BUTTON" NAME="darkstop" VALUE="stop" TITLE="Stop" OnClick="document.dsrmotion.Stop(); playstate=2;" src="images/stopbutton.jpg" width="27" height="26">
</form>
Whenever a media file is not resident to the browser, the browser must call on an external player to play the file. Even when the file appears to "play" inside the browser window, it is actually only the player that is embedded inside the browser window.
It's actually not a javascript thing at all. It's an ActiveX thing. Neither Firefox nor Opera supports ActiveX directly. (Altho the next version of Firefox is said to support ActiveX directly.) Another option is to install the activeX plug-in, but to me that's kinda silly. Aren't we all using Firefox because it gives us protection against the insideous hacking of ActiveX?
And lastly, when it comes to standards-compliant browsers of any kind, it is wise to use a DOCTYPE in all cases, even when coding html only. Streaming languages are all subsets of XML. Sometimes the best, most universal streaming results come from using strict XHTML, which is XML-specific in the DOCTYPE.
Streamingmedia.com is a good source for examples and tutorials. You can also google your way to lots of streamed media. There's a lot to learn from the source code at sites that actually stream media clips.
;)
kat