Pierre: Auf einen Anker in ein iFrame von einer externen Seite zugreifen

Hallo,

hab ein kleines Problem, wo ich keine Lösung zu finde. Ich habe in meiner Website auf einer Unterseite eine Liste in ein iFrame eingebunden. Da die Liste sehr lang ist, habe ich oben die Headlines wiederholt und kann so per anker auf die entsprechende Stelle springen. Das funzt auch, wenn ich von der gleichen Seite ausserhalb des iFrame drauf linke. Wie funzt des aber, wenn von einer anderen Seite auf einen Anker innerhalb des iFrames direkt springen will?

Damits allen klar ist:
iFrame (name="daten") ist auf "Seite2.html" eingebaut. Im iFrame habe ich die Datei "liste.html" eingebunden. Möchte ich nun von Seite 2 im iFrame an eine Stelle springen mach ich das so:

<a href="liste.html#anker2" target="daten">zum Anker 2</a>

Wie erreiche ich aber den gleichen Effekt von irgend einer anderen Seite her? Da müsste ich ja zuerst mal Seite2.html aufrufen und im iFrame, dann auf den anker springen?

Gibts dazu ne Lösung?
Herzlichen Dank für eure Tipps
Pierre

  1. hi,

    Wie erreiche ich aber den gleichen Effekt von irgend einer anderen Seite her? Da müsste ich ja zuerst mal Seite2.html aufrufen und im iFrame, dann auf den anker springen?

    Gibts dazu ne Lösung?

    Such mal nach "zwei Frames gleichzeitig ändern" -> da gibt's einiges an Lösungen, auch in Selfhtml selbst ist das als Beispiel angegeben. Geht mit Javascript. Eine reine HTML-Lösung gibt es nicht, und es sind noch Dutzende weitere Lösungen denkbar (mit PHP oder ZOPE oder...).

    Gruß,

    Malte.

    1. Hi,

      Such mal nach "zwei Frames gleichzeitig ändern" -> da gibt's einiges an Lösungen, auch in Selfhtml selbst ist das als Beispiel angegeben. Geht mit Javascript. Eine reine HTML-Lösung gibt es nicht, und es sind noch Dutzende weitere Lösungen denkbar (mit PHP oder ZOPE oder...).

      Was du schreibst war mir bekannt. Nur habe ich nicht zwei Frameinhalte zu ändern beim iFrame-Problem, sondern möchte auf eine iFrame in einer bestimmten Seite zugreifen.

      Ich habe in der Zwischzeit die Site in einer Beta mal hochgeladen:
      Die Ausgangseite:
      < http://www.koepflipartners.ch/campari/deutsch/drinks.html>
      Hier möchte ich mit einer Imagemap jede einzelne Flasch belegen. Beim klicken z.B. auf Skyy soll man auf der Zielseite:
      < http://www.koepflipartners.ch/campari/deutsch/drinks_rezepte.html>
      direkt auf das Skyy-Rezept springen, wie wenn man dies auf der Seite direkt mit der Auswahlliste tut und das schaff ich nicht mit dem Trick zwei Frames zu laden, weil ich erst auf die richtige Seite springen muss und in dieser Seite im iFrame auf den entsprechenden Anker.

      Vielleicht weiss trotzdem noch wer Rat.
      Danke
      Pierre

      1. hi,

        Ich habe in der Zwischzeit die Site in einer Beta mal hochgeladen:
        Die Ausgangseite:
        http://www.koepflipartners.ch/campari/deutsch/drinks.html
        Hier möchte ich mit einer Imagemap jede einzelne Flasch belegen. Beim klicken z.B. auf Skyy soll man auf der Zielseite:
        http://www.koepflipartners.ch/campari/deutsch/drinks_rezepte.html
        direkt auf das Skyy-Rezept springen, wie wenn man dies auf der Seite direkt mit der Auswahlliste tut

        du müsstest also das gewünschte sprungziel zunächst mal an die seite drinks_rezepte.html übergeben, damit diese es wiederum an den in ihr liegenden iframe weitergeben kann.

        du könntest beispielsweise den anzuspringenden ankernamen im querystring mitgeben, also drinks_rezepte.html?skyy aufrufen.

        an den inhalt des querystrings kommst du mittels location.search, aber achtung: da steht noch das führende ? mit drin, muss also erst per substr() o.ä. abgesplittet werden.

        anschließend könntest du den iframe gleich per javascript dynamisch ins dokument schreiben, und dabei den ankernamen an den wert des src-attributes anhängen - aber da wären besucher ohne JS ja gekniffen, und die SuMas würden dich auch verachten.

        also lieber erst mal ganz normal die seite im iframe laden, und anschließend location.hash den anker zuweisen.
        (ob das schon klappt, bevor die seite im iframe fertig geladen ist, oder ob sicherheitshalber ein timeout eingebaut werden sollte, musst du ausprobieren.)

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."