Javaskript: Zugriff auf anderen Frame

Von: , Frage gestellt am Mi, 15. Sep 1999

Hallo!

1.) Ich möchte, daß sich durch Klick auf ein Bild in Frame 1 mehrere Bilder in Frame 2 ändern. Ich weiß nicht genau, wie ich Bilder in einem anderen Frame mit Javaskript ansprechen kann, es müßte vielleicht irgendwie mit parent.frames[0]... gehen, aber ich habe leider keine Javaskript-Objektreferenz für die genaue Syntax. Vielleicht könnte mir jemand ein Code-Beispiel dafür geben.


2.) Außerdem würde mich interessieren, was ich an folgendem Code ändern muß, damit er nicht nur mit NC4, sondern auch mit IE4 funktioniert:

Link

Der Code öffnet (zumindest mit NC4) ein neues Fenster ohne Menü mit Seite2.htm. Seite1. htm wird im Frame, in dem der Link ist, geladen.


Ich freue mich über jegliche Hilfe.

Ciao, Tanja

6 Antworten zu dieser Frage

  1. Antwort von nach 15 Minuten hilfreich
    Re: Javaskript: Zugriff auf anderen Frame

    Hi, 1.) Ich möchte, daß sich durch Klick auf
    ein Bild in Frame 1 mehrere Bilder in
    Frame 2 ändern. Ich weiß nicht genau, wie
    ich Bilder in einem anderen Frame mit
    Javaskript ansprechen kann, es müßte
    vielleicht irgendwie mit
    parent.frames[0]... gehen, aber ich habe
    leider keine Javaskript-Objektreferenz
    für die genaue Syntax. Vielleicht könnte
    mir jemand ein Code-Beispiel dafür geben.
    parent.frames[x].document.images[y].src, wobei x die Framenummer ist (bei 0 begonnen), y die Nummer der Grafik (auch von 0 an); oder aber wenn Du den Grafiken Namen zuweist, parent.frames[x].document.GrafikName.src

    Eine gute Referenz findest Du übrigens bei http://www.teamone.de/selfhtml. 2.) Außerdem würde mich interessieren,
    was ich an folgendem Code ändern muß,
    damit er nicht nur mit NC4, sondern auch
    mit IE4 funktioniert:
    "Funktioniert nicht" war eigentlich noch nie eine brauchbare Fehlerbeschreibung ;-) aber in diesem Fall sehe ich da was: onClick="javascript:window.open(...);"
    onClick sagt bereits, daß es sich um JavaScript-Code handelt, die explizite Angabe ist daher falsch. Richtig heißt es einfach nur: onClick="window.open(...);"

    Cheatah
    http://cheatah.net

    • Antwort von nach 38 Minuten hilfreich
      Re^2: Javaskript: Zugriff auf anderen Frame

      Hallo! parent.frames[x].document.images[y].src,
      wobei x die Framenummer ist (bei 0
      begonnen), y die Nummer der Grafik (auch
      von 0 an); oder aber wenn Du den Grafiken
      Namen zuweist,
      parent.frames[x].document.GrafikName.src
      Toll. Danke für Deine schnelle Hilfe, so müßte es gehen. Ich werde es gleich ausprobieren, sobald ich Zeit dafür habe. Eine gute Referenz findest Du übrigens
      bei http://www.teamone.de/selfhtml.
      Da hätte ich auch selbst drauf kommen können. Ich habe meine sämtlichen Javascript-Tutorials durchgeschaut, nur Selfhtml vergessen, da ich es unter HTML abgelegt habe. "Funktioniert nicht" war eigentlich noch
      nie eine brauchbare Fehlerbeschreibung
      Stimmt ;-) onClick sagt bereits, daß es sich um
      JavaScript-Code handelt, die explizite
      Angabe ist daher falsch. Richtig heißt es
      einfach nur: onClick="window.open(...);"
      Ich habe es ausprobiert, aber es kommt beim IE4 immer noch die gleiche Fehlermeldung wie vorher:
      "Zeile: 105 (Zeile, in dem der Code steht)
      Zeichen: 1
      Fehler: Schnittstelle nicht unterstützt
      Code: 0"

      Tanja

      • Antwort von nach 2 Stunden hilfreich
        Re^3: Javaskript: Zugriff auf anderen Frame

        Hi, onClick sagt bereits, daß es sich um
        JavaScript-Code handelt, die explizite
        Angabe ist daher falsch. Richtig heißt es
        einfach nur: onClick="window.open(...);"
        Ich habe es ausprobiert, aber es kommt
        beim IE4 immer noch die gleiche
        Fehlermeldung wie vorher:
        "Zeile: 105 (Zeile, in dem der Code
        steht)
        Zeichen: 1
        Fehler: Schnittstelle nicht unterstützt
        Code: 0"
        ach, IE 4... Es kann sein, daß Du davon eine Version mit Bug hast, die keine neuen Fenster öffnen kann (oder so ähnlich, ich hatte die Version nie). In dem Fall geh mal auf die Microsoft-Seiten, es gibt einen Service-Pack dafür, der den Bug behebt.

        Wenn es das nicht war, dann stell die Seite(n) bitte mal ins Netz und nenne die URL; vielleicht liegt es auch irgendwie am Zusammenhang...

        Cheatah
        http://cheatah.net

        • Antwort von nach 3 Stunden hilfreich
          Re^4: Javaskript: Zugriff auf anderen Frame

          Hallo! ach, IE 4... Es kann sein, daß Du davon
          eine Version mit Bug hast, die keine
          neuen Fenster öffnen kann
          Ich glaube sofort, daß es meine Version (4.71.1712.6) einen Bug hat, typisch M$ eben! Wenn es das nicht war, dann stell die
          Seite(n) bitte mal ins Netz und nenne die
          URL; vielleicht liegt es auch irgendwie
          am Zusammenhang...
          Ich habe es zwar mit einer neuen IE-Version noch nicht ausprobiert, habe aber mal schnell alles auf meinen WWW-Server gestellt. Bitte nicht über das Layout und den Inhalt der Seiten wundern, es sind nur Versuche für meine neue Homepage.

          Link zum Window-Problem:
          http://www.fh-furtwangen.de/~schaett/test/me2b.htm (auf "photos" klicken)

          Link zum Bild-Problem:
          http://www.fh-furtwangen.de/~schaett/test/

          Ciao, Tanja

          • Antwort von nach 3 Stunden hilfreich
            Re^5: Javaskript: Zugriff auf anderen Frame

            Hi, Ich glaube sofort, daß es meine Version
            (4.71.1712.6) einen Bug hat, typisch M$
            eben!
            aus der Versionsnummer kann ich das leider auch nicht absehen :-) aber da es mit meiner (4.72...) klappt, gehe ich in der Tat von besagtem Bug aus. Link zum Window-Problem:
            http://www.fh-furtwangen.de/~schaett/test/me2b.htm
            (auf "photos" klicken)
            Funktioniert einwandfrei. Ein paar Details:

            - Du hast das abschließende Anführungszeichen des onClick in der nächsten Zeile (onClick="...<umbruch>"), was glaube ich nicht sein muß.

            - Besser ist es folgendermaßen:
            <a href="#" onClick="...; return false;">
            Dadurch wird erstens die Seite nicht neu aufgebaut, und zweitens bewirkt das "return false;", daß der Link auf "#" bei aktiviertem JavaScript gar nicht erst ausgeführt wird.

            - Du hast auf der Seite einige document.images-Funktionen, die mit einer Browserversionsprüfung gekoppelt sind. Damit bekommst Du nur einen Teil der Browser, die die Funktionen ausführen können, und möglicherweise auch ein paar, die es nicht können. Viel einfacher, und mit exakt 100% (nicht mehr, nicht weniger) aller "tauglichen" Browser arbeitend, is folgendes:
            if (document.images) {
            // hier kannst Du auf document.images
            // beliebig zugreifen
            } Link zum Bild-Problem:
            http://www.fh-furtwangen.de/~schaett/test/
            window.parent.frames[1],document... wird wohl nie funktionieren, wenn Du auf das Komma darin bestehst ;-)

            Cheatah
            http://cheatah.net

            • Antwort von nach 20 Stunden hilfreich
              Re^6: Javaskript: Zugriff auf anderen Frame

              Hallo Cheatah!

              Vielen Dank noch mal fuer Deine Hilfe und die tollen Tips :-)) , ich werde sie bei der endgültigen Version auf jeden Fall berücksichtigen.

              Ciao, Tanja

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!