Miten saan videolinkit upotettuun playeriin?

Ongelmani on kahtalainen:
1) Olen upottanut web-sivuilleni Media Playerin. Minulla on useita videotiedostoja, joista haluaisin tehdä linkkilistan. Leikkeen linkkiä painettaessa leike avautuisi upotetussa playerissa katseltavaksi. Olen päässyt niin pitkälle, että leike avautuu upotetussa playerissa, mutta samalla aukeaa Media Playeri omaan ikkunaankin. Kuinka estän tämän ikkunan avautumisen?
2) En ole osannut linkittää useita videotiedostoja upotettuun playeriin muuten kuin kirjoittamalla saman funktion aina uudelleen ja uudelleen, mutta nimeämällä sen aina eri lailla: esim. function soita1(), function soita2(), function soita3() jne. Mielestäni tämä ei kuitenkaan ole oikein. Miten homma hoidetaan yhdellä funktion kirjoittamisella?
Olen kolunnut erilaisia support-foorumeita ja Microsoftin Windows Media SDK:n, mutta vain jälkimmäisestä on ollut edes hitusen apua.
Tässähän tätä. Kiitollisena odottelen vastauksia.
7558
Äänestä

Muut lukivat myös

Vastaukset 7

Vanhimmat

niin tietäis, että miksi se media player avautuu kaksi kertaa.

Kohtaan kaksi voisi paras ratkaisu olla soitettavan leffan välittäminen funktiolle jollakin parametrillä.





ja tuota kutsuisit sitten sivullasi näin

javascript:soita("munleffa.avi");

ja tuo munleffa.avi välittyy fukntiolle parametrina, jonka mediaplayer sitten avaa.

Äänestä
  • Kiitos vastauksestasi. Koodia tulee vielä vaikkapa illemmalla. Nyt en ennätä sitä tähän kirjoittamaan.

    Tuosta koodiesimerkistäsi yksi kysymys. Kirjoitat:

    function soita(leffa)
    {
    mediaplayer.play(leffa)
    }

    Tarkoittaako tässä tuo "leffa" sitä, että minun pitää kirjoittaa esim. juuri noin sulkeiden sisään, vai pitääkö minun antaa sen tilalle oikea videotiedostoni nimi? Tämä voi olla ns. tyhmä kysymys, mutta kun on kaikenlaita kokeillut, eikä mikään toimi, niin tulee varmistettua yksinkertaisimmatkin asiat.

    Äänestä

  • OJK kirjoitti:

    Kiitos vastauksestasi. Koodia tulee vielä vaikkapa illemmalla. Nyt en ennätä sitä tähän kirjoittamaan.

    Tuosta koodiesimerkistäsi yksi kysymys. Kirjoitat:

    function soita(leffa)
    {
    mediaplayer.play(leffa)
    }

    Tarkoittaako tässä tuo "leffa" sitä, että minun pitää kirjoittaa esim. juuri noin sulkeiden sisään, vai pitääkö minun antaa sen tilalle oikea videotiedostoni nimi? Tämä voi olla ns. tyhmä kysymys, mutta kun on kaikenlaita kokeillut, eikä mikään toimi, niin tulee varmistettua yksinkertaisimmatkin asiat.

    on muuttujan nimi. Sillä siis välitetään funktiolle joku arvo. Funktion esittelyssä on pelkästään tuo leffa, koska ethän sitä esitellessä vielä tiedä elokuvan nimeä. Itse html-koodissa funktiota kutsuessasi vasta kerrot mitä leffaa aletaan näyttämään.

    Tässä olis koko html-sivu:





    function soita(leffa)
    {
    mediaplayer.play(leffa);
    }





    Hei tässä on leffoja! Paina leffan linkkiä ja leffa vautuu mediaplayeriin.

    Alien2

    Rambo3

    Predator




    leffat on tuon koodin mukaan leffat-alihakemistossa. Mediaplayeria en ole koskaan upottanut sivuilleni, joten tuo mediaplayer.play() on ihan omasta päästä heitetty. Ossat varmaan korvata sen kohdan oikealla koodilla, joka avaa mediaplayerin.

    Tässä vielä ihan toimiva esimerkki parametrien välityksestä.





    function morjensta(nimi)
    {
    alert("Terve vaan " nimi);
    }





    Sano Pentille terve

    Äänestä

  • Piru kirjoitti:

    on muuttujan nimi. Sillä siis välitetään funktiolle joku arvo. Funktion esittelyssä on pelkästään tuo leffa, koska ethän sitä esitellessä vielä tiedä elokuvan nimeä. Itse html-koodissa funktiota kutsuessasi vasta kerrot mitä leffaa aletaan näyttämään.

    Tässä olis koko html-sivu:





    function soita(leffa)
    {
    mediaplayer.play(leffa);
    }





    Hei tässä on leffoja! Paina leffan linkkiä ja leffa vautuu mediaplayeriin.

    Alien2

    Rambo3

    Predator




    leffat on tuon koodin mukaan leffat-alihakemistossa. Mediaplayeria en ole koskaan upottanut sivuilleni, joten tuo mediaplayer.play() on ihan omasta päästä heitetty. Ossat varmaan korvata sen kohdan oikealla koodilla, joka avaa mediaplayerin.

    Tässä vielä ihan toimiva esimerkki parametrien välityksestä.





    function morjensta(nimi)
    {
    alert("Terve vaan " nimi);
    }





    Sano Pentille terve

    function soita(leffa)
    {
    document.mediaPlayer.stop();
    document.mediaPlayer.fileName = leffa;
    }












    Soita Alien3-leffa

    Äänestä

  • Piru kirjoitti:

    function soita(leffa)
    {
    document.mediaPlayer.stop();
    document.mediaPlayer.fileName = leffa;
    }












    Soita Alien3-leffa

    Olen nyt kokeillut molemmat versiot ehdottamistasi JavaScripteista. Jokin mättää vieläkin. Kummassakin tapauksessa selain näyttää virheeksi seuraavaa:
    Line: se-ja-se
    Error: Object expected
    Nyt täytyy sanoa, että en osaa. Periksi en anna, sillä täytyyhän tämän olla mahdollista.

    Kyselit aiemmin sen koodin perään, joka aiheuttaa kaksinkertaisen playerin käynnistymisen. Tässä sitä:











    low-band

    esimerkki



    Kuten huomaat, olen kirjoittanut scriptin bodyyn enkä head-osioon. Sen paikka varmaankin olisi headissa, mutta en halunnut kasvattaa headin kokoa moninkertaisella funktioiden kirjoittamisella.

    Player.controls.play() saattaa myös olla turha rivi.

    Lisäksi object-tagissa ei kuitenkaan toimi upotetussa playerissa. Funktio kyllä hakee oikean videotiedoston playeriin, mutta video on käynnistettävä manuaalisesti.

    Sitä en tiedä, miksi player avautuu myös omaan ikkunaan ja siinä autostart toimii.

    Eihän tämän näin pidä toimia?

    Äänestä

  • OJK kirjoitti:

    Olen nyt kokeillut molemmat versiot ehdottamistasi JavaScripteista. Jokin mättää vieläkin. Kummassakin tapauksessa selain näyttää virheeksi seuraavaa:
    Line: se-ja-se
    Error: Object expected
    Nyt täytyy sanoa, että en osaa. Periksi en anna, sillä täytyyhän tämän olla mahdollista.

    Kyselit aiemmin sen koodin perään, joka aiheuttaa kaksinkertaisen playerin käynnistymisen. Tässä sitä:











    low-band

    esimerkki



    Kuten huomaat, olen kirjoittanut scriptin bodyyn enkä head-osioon. Sen paikka varmaankin olisi headissa, mutta en halunnut kasvattaa headin kokoa moninkertaisella funktioiden kirjoittamisella.

    Player.controls.play() saattaa myös olla turha rivi.

    Lisäksi object-tagissa ei kuitenkaan toimi upotetussa playerissa. Funktio kyllä hakee oikean videotiedoston playeriin, mutta video on käynnistettävä manuaalisesti.

    Sitä en tiedä, miksi player avautuu myös omaan ikkunaan ja siinä autostart toimii.

    Eihän tämän näin pidä toimia?

    Nyt sain kaksinkertaisen playerin avautumisen ongelman poistettua!

    Kirjoitin linkit uusiksi:

    low-band

    esimerkki

    Nyt leike avautuu suoraan ja pelkästään upotettuun playeriin. Se ei kuitenkaan vieläkään käynnistu automaattisesti.

    Edelleen ongelmana on kuitenkin myös se, että funtio täytyy kirjoittaa joka videotiedostolle erikseen.

    Äänestä

Olen vihdoin saanut kirjoitettua oikean koodin. Ohessa koko sivun koodi. Tämä on nyt testattu muutamaan kertaan ja toimii moitteettomasti. Playerin parametrit vain pitää lopullisella sivulla pistää kohdilleen.




function annapalaa(osoite) {
   player.URL = osoite;
   player.controls.play();
}








lowband-video




Eli tosi lähellä ollaan liikuttu koko ajan. Kiitos neuvoistasi nimimerkki "Piru". Niistä oli iso hyöty ongelman ratkaisussa. Tuli itsekin myös kokeiltua sen myötä jos jonkinlaisia vaihtoehtoja sekä haettua apuja vähän kaikkialta. Minulle ainakin tällaista tapahtuu, koska olen aika noviisi vielä JavaScriptin alueella.

Äänestä

Kommentoi aloitusta


OJK kirjoitti:

Ongelmani on kahtalainen:
1) Olen upottanut web-sivuilleni Media Playerin. Minulla on useita videotiedostoja, joista haluaisin tehdä linkkilistan. Leikkeen linkkiä painettaessa leike avautuisi upotetussa playerissa katseltavaksi. Olen päässyt niin pitkälle, että leike avautuu upotetussa playerissa, mutta samalla aukeaa Media Playeri omaan ikkunaankin. Kuinka estän tämän ikkunan avautumisen?
2) En ole osannut linkittää useita videotiedostoja upotettuun playeriin muuten kuin kirjoittamalla saman funktion aina uudelleen ja uudelleen, mutta nimeämällä sen aina eri lailla: esim. function soita1(), function soita2(), function soita3() jne. Mielestäni tämä ei kuitenkaan ole oikein. Miten homma hoidetaan yhdellä funktion kirjoittamisella?
Olen kolunnut erilaisia support-foorumeita ja Microsoftin Windows Media SDK:n, mutta vain jälkimmäisestä on ollut edes hitusen apua.
Tässähän tätä. Kiitollisena odottelen vastauksia.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu