[JavaScript] Javascript in Iframe

Dieses Thema im Forum "Webentwicklung" wurde erstellt von The Baddy, 25. Dezember 2008 .

Schlagworte:
  1. 25. Dezember 2008
    Javascript in Iframe

    Hey Leute,
    ich habe folgendes Problem.
    Auf meiner website befindet sich ein iframe in dem ein video geöffnet werden soll das ich von einem anderen frame aus starten will.
    Eine seite mit folgendem quellcode wird im iframe geöffnet:
    HTML:
    <object
     id="video"
     width="320"
     height="240"
     classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"
     codebase="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0">
     <param name="SRC"
     value="video.mov">
     <param name="autoplay" value="false">
     <param name="controller" value ="true">
     <param name="type" value="video/quicktime">
     <param name="pluginspage"
     value="http://www.apple.com/quicktime/download/index.html">
     <embed
     name="video"
     width="320"
     height="258"
     src="video.mov"
     type="video/quicktime"
     autoplay="false"
     controller="true"
     enablejavascript="true"
     pluginspage="http://www.apple.com/quicktime/download/index.html">
     </embed>
    nun müsste ich das video mit folgendem code aus einem anderen frame starten können:
    HTML:
    <a href="javascript:document.video.Play();">Abspielen</a>
    dies funktioniert jedoch nicht, hoffe ihr könnt mir schnell helfen.

    gruß The Baddy
     
  2. 25. Dezember 2008
    AW: Javascript in Iframe

    versuchs mal mit:

    Code:
    javascript:FRAMENAME.video.Play();
     
  3. 25. Dezember 2008
    AW: Javascript in Iframe

    FRAMENAME musst du natuerlich ersetzen durch den richtigen Namen deines Frames..das hast du gemacht, oder?
     
  4. 25. Dezember 2008
    AW: Javascript in Iframe

    klar habe ich das gemacht mein iframe hat auch den name iframe funktioniert aber nicht
     
  5. 25. Dezember 2008
    AW: Javascript in Iframe

    dann schreib mal in deiner iframe-datei eine javascript-funktion mit "play()" oder sonst was, wo er das aufruft:

    Code:
    play();
    und dann rufst du von außen

    Code:
    javascript:framename.deinefunktion();
    auf..das muesste evtl. gehen
     
  6. 25. Dezember 2008
    AW: Javascript in Iframe

    hmm bin leider da nicht so der experte habe halt eine datei mit dem iframe und im iframe wird die datei geöffnet für das video.
    wo und wie füge ich jetzt die javascript-funktion ein?
     
  7. 25. Dezember 2008
    AW: Javascript in Iframe

    also.. du hast ja einen iframe mit dem video.. dort schreibst du zwischen <head> und </head> folgendes rein:

    Code:
    <script language="javascript">
    <!--
    function playVideo() {
     document.video.play();
    }
    <!--
    </script>
    bei der einen seite, wo du das so gestalten moechtest, verlinkst du das dann mit:

    Code:
    <a href="javascript:FRAMENAME.playVideo();">Linkname</a>
    Wenn das nicht klappt, dann weiß ich leider auch nicht weiter :/ Tut mir leid
     
  8. 28. Dezember 2008
    AW: Javascript in Iframe

    So weit ich weiß ist das DOM des Iframes vom übergeordnetem DOM aus Sichherheitsgründen abgeschottet. Dh man kann nicht auf Daten/Quellcodes/Javascript-Funktionen des anderen DOM's zugreifen.
    Wenn man allerdings noch einen älteren Browser benutz, in dem das vielleicht noch möglich ist, dann bedenke dass du im absoluten Wurzel-Element des untergeordnetem DOM's bist wenn du den Iframe aufrifst. Dh du musst noch "document" bzw "window" anhängne um auf Funktionen und Objekte zugreifen zu können.
    Beispiel für globale Funktion:
    Code:
    IFRAME.window.alert("asdf");
    
     
  9. 28. Dezember 2008
    AW: Javascript in Iframe

    da greift die same-domain-policy, d.h. wenn das iframe nicht auf der selben domain lagert wie die aufrufende seite hast du keinen zugriff auf das dom. ansonsten solltest du vollen zugriff haben.

    aus dem iframe via: parent
    in das iframe via: top.frames.{id_des_iframes}
     
  10. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.