Avatar billede mik789 Nybegynder
01. juli 2008 - 07:10 Der er 4 kommentarer og
1 løsning

Kode en embedded player i andet vindue

Jeg har et site med artikler om musik hvor der er en embedded player der bruges til at afspille mp3 stumper som eksempler. I dag er det sådan at man kan kode en embedded Windows Media Player både i Internet Explorer og i Firefox (der bruger sin egen særlige WMP plugin). I dette tilfælde skal den bare kunne spille forskellige lydfiler når brugeren klikker på dem. Grundlæggende er koden denne:

function changeMusic(newURL){
  document.Player.URL=newURL;
}

- hvor Player er navnet på WMP objektet.

og kaldet kan f.eks. være:

<a href="java script:changeMusic(mus_1)">klik</a> hvor mus_1 henviser til en given URL.

Nu har jeg brug for at foretage fuktionskaldet fra et andet vindue der nemlig åbner fra det vindue, hvori playeren er embedded. I andre tilfælde hvor en funktion udføres fra et sådan vindue addresserer jeg det oprindelige vindue vha "opener", f.eks.:

function fNote(id,content) {
  opener.document.getElementById(id).innerHTML=content;
}

som skriver en note i en <div> i det oprindelige vindue.
Men den går ikke med playeren, dvs. tricket er ikke bare: opener.document.Player.URL=newURL;

- måske fordi playerens kode jo ikke er "rigtig" javascript, men Microsofts eget script og derfor måske ikke bruger "opener" som henvisning til et vindue hvorfra et andet vindue er åbnet.

Er der nogle der har nogle gode råd her?

//mik
Avatar billede roenving Novice
01. juli 2008 - 14:42 #1
Hvis Player er en property på opener-vinduet, skulle der da ikke være noget galt i den viste konstruktion ?-)

-- hvad får du at vide, når du forsøger, og hvad alertes, hvis du prøver at fortælle hvad Player er ?o]
Avatar billede mik789 Nybegynder
01. juli 2008 - 23:01 #2
det er det, der er det mærkelige - jeg får ingen ting at vide - ingen fejl i javascript konsollen.
roenving, hvad mener du med det sidste, "hvad alertes, hvis du prøver at fortælle hvad Player er ?" ?
Avatar billede roenving Novice
02. juli 2008 - 16:30 #3
F.eks.

function changeMusic(newURL){
  alert(opener.document.Player);
  opener.document.Player.URL=newURL;
}
Avatar billede mik789 Nybegynder
31. oktober 2010 - 16:10 #4
roenving, sp. er forældet, men læk et svar, så jeg kan lukke det.
Avatar billede mik789 Nybegynder
15. november 2010 - 06:20 #5
lukker selv så
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