Avatar billede para7 Nybegynder
02. juli 2008 - 07:19 Der er 11 kommentarer og
1 løsning

Tjekke om WMP er stoppet - Kapitel II

I http://www.eksperten.dk/spm/830578 fik jeg en kodestump af w13. Jeg har forsøgt at implementere det, men er ikke nogen haj til javascript. Håber på hjælp. Jeg har:

<HTML>
<HEAD>
<TITLE>Embedded WM Player Control</TITLE>
</HEAD>
<BODY>
<object id="MediaPlayer1" width="320" Height="310"
classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
standby="Loading Media Player"
Type="application/x-oleobject" VIEWASTEXT>
<param name="AutoStart" value="-1">
<param name="URL" value="testclip.avi">
<embed type="application/x-mplayer2" name="MediaPlayer">
</embed>
</object>
<br>
<a href="java script:void(0)" onMouseOver="MediaPlayer1.controls.pause()" onMouseOut="MediaPlayer1.controls.play()">
Pauserer klip ved mouseover og kører klippet videre ved mouseout. Men skal laves så klippet ikke kører videre, hvis det er kørt til ende.</a>
<br>
Her er en kode fra w13, som jeg har forsøgt at implemente:
setInterval("if(MediaPlayer1.playState==8)window.location.href='nyurl.htm'",1000);
<script type="text/javascript">
<!--
setInterval("if(MediaPlayer1.playState==8)window.location.href='nyurl.htm'",1000);
//-->
</script>
</BODY>
</HTML>
Avatar billede gurly Praktikant
02. juli 2008 - 09:21 #1
er du klar over at Firefox og andre browsere ikke supportere javascripting direkte til WMP, så uanset hvad, er det du laver kun for explorer brugere.

men nu er din kode til selve playeren ogfså så forenklet og med så mange mangler at firefox kan slet ikke afspille den alligevel, men det er måske ligemeget ?

Du bør envidere holde dig til WMV videoer i WMP
kan se du bruger AVI, det er ikke nogen god ide.
Avatar billede gurly Praktikant
02. juli 2008 - 09:30 #2
Dette her virker >

<script type="text/javascript">
window.onload = function(){
Player = document.getElementById("MediaPlayer1")
setInterval("if(Player.playState==1)window.location.href='nyurl.htm'",1000);
}
</script>

Men som sagt, det er for Internet Explorer brugere only, og mange bruger altså andre browsere.
Avatar billede gurly Praktikant
02. juli 2008 - 09:36 #3
jeg må lige indskyde, at hvis man i stedet for kun at køre musen over linket,
at hvis man klikker på linket, så stopper playeren, og så går den jo videre til nyurl
jeg kan ikke umidelbart lige se hvorfor ?
Avatar billede para7 Nybegynder
02. juli 2008 - 11:57 #4
Tak for koder indtil nu. Hvis jeg likker linket sker der ikke noget. Så ingen problem her.

Ja, det er bare en simpel test player med et tilfældigt klip. Den rigtige player har hvad der skal til for at køre i Firefox. Ikke MS freak ;)
Men om den her funktion ikke virker i Firefox betyder ikke så meget, det virker alligevel.
Avatar billede para7 Nybegynder
02. juli 2008 - 12:00 #5
Men kan vi ikke i stedet for at gå til en anden URL disable onmouseout'en når playeren detekteres at være kørt til ende?
Avatar billede gurly Praktikant
03. juli 2008 - 01:31 #6
Det var da underligt, hvis jeg klikker på linket her (explorer 6)  så stopper playeren, og derefter skifter den jo så url

vil da mene at dine funktioner med onMouseOver og onMouseOut heller ikke vil virke i firefox, fordi komandoerne pause og play ikke kan scriptes direkte til WMP i firefox.


Men ellers så skal det vel være sådan her, jeg har ikke rette noget i selve playeren, men lavet lidt om på resten, så det skulle køre som du vil have det.


<HTML>
<HEAD>
<TITLE>Embedded WM Player Control</TITLE>
</HEAD>
<BODY>

<object id="MediaPlayer1" width="320" Height="310"
classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
standby="Loading Media Player"
Type="application/x-oleobject" VIEWASTEXT>
<param name="AutoStart" value="-1">
<param name="URL" value="Loading-card1.wmv">
<embed type="application/x-mplayer2" name="MediaPlayer">
</embed>
</object>

<br>
<a href="java script:void(0)" onMouseOver="onsdag();" onMouseOut="torsdag();">Linket</a>
<br>

<script type="text/javascript"><!--
function onsdag() {
Player = document.getElementById("MediaPlayer1")
    if (Player.playState==3)
    {
    Player.controls.pause();
    }
}
//--></script>

<script type="text/javascript"><!--
function torsdag() {
Player = document.getElementById("MediaPlayer1")
    if (Player.playState==2)
    {
    Player.controls.play();
    }
}
//--></script>


</BODY>
</HTML>


Nu stopper den heller ikke mere når jeg klikker på linket, men føre jeg musen over linket efter playeren er stoppet, så skriver den nede i explorer at den henter fra webstedet void(0)"
hmm, måske det virker bedre hvis di ligger det i et billede ?
Avatar billede gurly Praktikant
03. juli 2008 - 01:37 #7
PS, den der playerstate 8 for hvis den er "slut" , den syntes jeg ikke virker ?
men det gik vist også fint uden c",)
Avatar billede gurly Praktikant
03. juli 2008 - 01:41 #8
PPS, du skal lige rette videofil navnet tilbage c",)
Avatar billede para7 Nybegynder
03. juli 2008 - 06:27 #9
Det dur' :) Tak for denne gang....
Avatar billede para7 Nybegynder
03. juli 2008 - 06:30 #10
At køre, jeg kører... Det kører... ;)
Avatar billede para7 Nybegynder
03. juli 2008 - 06:33 #11
Nu stemmer det også med state grammatikken:
WMState[2] = "Paused";  WMState[3] = "Playing";
Avatar billede gurly Praktikant
03. juli 2008 - 13:18 #12
nemlig ja, men hvorfor WMState[8] ikke kan bruges til noget ved jeg ikke.
Takker for Point c",)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester