Casimirsy: doppelt referenzieren

Hallo,
unter "Werteübergabe" ist schon viel diskutiert worden, eine Lösung meines Problems habe ich aber nicht gefunden:

Ich "bastele" eine neue Homepage mit der Vorgabe, dass die Seiten immer vollständig zu sehen sind. Aber es gibt einen Glossar, der bereits fast 50 Stichwörter mit Erklärungen umfasst. Also befindet sich die Stichwortsammlung in einer separaten Datei (glossar-txt.html), die als "object" in ein Tabellenfeld scrollbar in glossar.html eingebunden ist.

Nun möchte ich, dass z.B. der Begriff "Messung" von der Seite X verweist auf das Stichwort "Messung" auf der Glossarseite in der Stichwortsammlung im iframe / object.

Meine Idee ist es, auf der Seite X das Wort "Messungen" mit dem Link:
<A href="../glossar.html?name=mes">Messungen</A>

zu versehen, auf der Glossarseite den Suchstring mit Java-Script auszulesen und der Definition des object mitzugeben

<object data="./glossar-txt.html#XXXX" ....
wobei XXXX eine Variable ist, die den Suchstring enthält.

Frage: Geht das?
und wenn es geht, habe ich eine Bitte: Kann mir bitte jemand helfen, die passenden Zeilen zu schreiben?

Herzlichen Dank im voraus,
Tom

  1. Hi,

    Ich "bastele" eine neue Homepage mit der Vorgabe, dass die Seiten immer vollständig zu sehen sind. Aber es gibt einen Glossar, der bereits fast 50 Stichwörter mit Erklärungen umfasst. Also befindet sich die Stichwortsammlung in einer separaten Datei (glossar-txt.html), die als "object" in ein Tabellenfeld scrollbar in glossar.html eingebunden ist.

    Verwendest du das object hier ausschliesslich dazu, einen scrollbaren Bereich zu bekommen ...?
    Dann wirf es weg, und nutze CSS dafür, Stichwort overflow.

    Nun möchte ich, dass z.B. der Begriff "Messung" von der Seite X verweist auf das Stichwort "Messung" auf der Glossarseite in der Stichwortsammlung im iframe / object.

    Meine Idee ist es, auf der Seite X das Wort "Messungen" mit dem Link:
    <A href="../glossar.html?name=mes">Messungen</A>

    zu versehen, auf der Glossarseite den Suchstring mit Java-Script auszulesen und der Definition des object mitzugeben

    <object data="./glossar-txt.html#XXXX" ....
    wobei XXXX eine Variable ist, die den Suchstring enthält.

    Frage: Geht das?

    Schon möglich; aber: siehe oben.
    Ein einfacher Anker-Link zum "Anspringen" des gewünschten Bereiches sollte es auch tun.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. Hi,

      »» Ich "bastele" eine neue Homepage mit der Vorgabe, dass die Seiten immer vollständig zu sehen sind. Aber es gibt einen Glossar, der bereits fast 50 Stichwörter mit Erklärungen umfasst. Also befindet sich die Stichwortsammlung in einer separaten Datei (glossar-txt.html), die als "object" in ein Tabellenfeld scrollbar in glossar.html eingebunden ist.

      Verwendest du das object hier ausschliesslich dazu, einen scrollbaren Bereich zu bekommen ...?

      << Ja, das ist richtig! ...

      Dann wirf es weg, und nutze CSS dafür, Stichwort overflow.

      <<... Das ist es.

      MfG ChrisB

      »»
      << Herzlichen Dank dafür.

  2. es gibt einen Glossar, der bereits fast 50 Stichwörter mit Erklärungen umfasst. Also befindet sich die Stichwortsammlung in einer separaten Datei (glossar-txt.html), die als "object" in ein Tabellenfeld scrollbar in glossar.html eingebunden ist.

    Dass du die Sache (letztlich im Browser) in zwei Dateien aufteilst, macht die Sache unnötig kompliziert.

    Du kannst den Inhalt auch einfach direkt ins Feld einfügen, ihm eine feste Höhe sowie overflow:auto geben, dann ist der Inhalt auch scrollbar, ohne dass er in einer zweiten Datei liegt.

    Dann sparst du dir das gesamte Scripte, weil du einfach auf glossar.html#Messung linken kannst und der Browser scrollt automatisch dorthin.

    Meine Idee ist es, auf der Seite X das Wort "Messungen" mit dem Link:
    <A href="../glossar.html?name=mes">Messungen</A>
    zu versehen, auf der Glossarseite den Suchstring mit Java-Script auszulesen und der Definition des object mitzugeben
    <object data="./glossar-txt.html#XXXX" ....
    wobei XXXX eine Variable ist, die den Suchstring enthält.

    Ich würde mit glossar.html#Messungen arbeiten, dann bekommst du mit http://de.selfhtml.org/javascript/objekte/location.htm#hash@title=location.hash an den Text »#Messungen«.

    Dem object gibst du eine ID, sodass du es mit http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id@title=document.getElementById ansprechen kannst (sobald es im DOM verfügbar ist).
    Dort änderst du dann das data-Attribut:

    <script type="text/javascript">
    document.getElementById("meinObject").data = "glossar-txt.html#" + location.hash;
    </script>

    Das muss entweder in einem Script unter dem object stehen oder im window.onload aufgerufen werden.

    Aber wie gesagt rate ich zur Version ohne JavaScript - die ist hier nicht nötig.

    Mathias

    1. document.getElementById("meinObject").data = "glossar-txt.html#" + location.hash;

      Korrektur:

      document.getElementById("meinObject").data = "glossar-txt.html" + location.hash;

      Denn location.hash enthält bereits ein »#«.