bernd: seltsames display: anzeige springt

hallo zusammen!
(diese sache passt hier wohl in mehrere kategorien- ich hoffe, es schauen die richtigen leute vorbei ;-)
folgendes lästiges problem bekomme ich leider nicht abgestellt:
ich habe in einem frame eine längere link-liste als tabelle abgelegt und bei einigen gibt es noch unterpunkte, deren display (ist zuerst "none") ich onClick auf "block" schalte. klappt soweit auch gut, nur zeigt sich dabei ein ärgerliches verhalten- nach klick auf einen link mit unterpunkten springt die anzeige wieder zum beginn des html-dokuments.
weil die linkliste an sich ziemlich lang ist, fällt das besonders unangenehm bei links auf, zu denen man "hinscrollen" muss- die sind dann nämlich erstmal wieder "weg"/ bzw. man muss dann nochmal runterscrollen.
kennt jemand von euch dieses phänomen und hat einen tipp, wie das abzustellen wäre?

greetings
bernd

  1. Hallo bernd,

    nach klick auf einen link mit unterpunkten springt die anzeige wieder zum beginn des html-dokuments.
    kennt jemand von euch dieses phänomen und hat einen tipp, wie das abzustellen wäre?

    Ohne Sourcecode können wir Dir eigentlich nicht weiterhelfen. Allerdings: Aus Deiner Problembeschreibung lässt sich erahnen, dass Du Links so schreibst:

    <a href="#" onclick="....;">...</a>

    Wenn das der Fall ist, mach daraus:

    <a href="#" onclick="....; return false;">...</a>

    Es handelt sich hierbei um die Tatsache, dass das Linkziel # immer das aktuelle Dokument ganz oben meint. Wenn Du nun bei onclick etwas JS-Code ausführst, dem Browser aber nicht sagst, er soll das onlick-Ereignis vergessen (return false), dann wird der Browser dem Link folgen.

    Wenn dies nicht das Problem ist, dann musst Du mehr Informationen hergeben, bevor wir Dir helfen können.

    Viele Grüße,
    Christian

    1. hallo christian,
      die logik dieses arguments hat mich spontan begeistert ;-)

      Es handelt sich hierbei um die Tatsache, dass das Linkziel # immer das aktuelle Dokument ganz oben meint. Wenn Du nun bei onclick etwas JS-Code ausführst, dem Browser aber nicht sagst, er soll das onlick-Ereignis vergessen (return false), dann wird der Browser dem Link folgen.

      und siehe da: genau das war's.
      da hab ich doch mal wieder was wichtiges und nützliches gelernt.

      vorzüglichsten dank
      bernd

    2. Hallo,

      wie schön, daß man auch als passiver (aber aufmerksamer) Leser immer wieder mal wertvolle Tipps abstauben kann.
      Hab sofort meine Dateien nach <a href="#" durchsucht, und siehe da: genau das gleiche Problem in meiner Navigation, das mir bisher noch nicht einmal selbst aufgefallen ist.

      Danke vielmals

      Gruß Fritz

      --
      ss:( zu:| ls:# fo:| de:/ va:) ch:? sh:( n4:? rl:? br:$ js:| ie:| fl:| mo:)
      1. Hallo.

        wie schön, daß man auch als passiver (aber aufmerksamer) Leser immer wieder mal wertvolle Tipps abstauben kann.

        So geht es mir hier auch regelmäßig. Das Forum ist wirklich Gold wert :-D
        MfG, at

  2. Hallo Bernd,

    ich habe in einem frame eine längere link-liste als tabelle abgelegt und bei einigen gibt es noch unterpunkte, deren display (ist zuerst "none") ich onClick auf "block" schalte.

    Sind die Unterpunkte auch in einer eigenen Tabellenzelle und machst du diese ganze Tabellenzelle bei onClick sichtbar? Wenn sich der style einer Tabellenzelle ändert, ändert sich ja sozusagen die Tabelle. Dann könnte ich mir vorstellen, dass einige Browser zum Anfang der Tabellenzelle scrollen.

    (Mal ein reines Gedankenspiel: Der Browser merkt, dass sich die Tabelle ändert. Also löscht er sie zuerst einmal und rendert sie dann neu. Sobald aber die Tabelle temporär gelöscht ist, hängt die Scrollposition ja im "Nichts", also wird an die unterste mögliche Stelle gescrollt. Nur so eine Überlegung, wird in Wirklichkeit wahrscheinlich ganz anders sein.)

    Wenn das der Fall ist, versuch mal die Unterpunkte in einen div zu quetschen und mach dann diesen div sichtbar oder unsichtbar. Falls das nicht hilft, sende doch einmal die wichtigsten Passagen aus deinem code und sag uns, in welchem Browser das Problem auftritt.

    weil die linkliste an sich ziemlich lang ist, [...]

    Solltest du vermeiden:
    http://www.kommdesign.de/texte/gedaechtnisspanne.htm

    Viel Erfolg,
    Robert (der sich nicht verkneifen kann, hier mahnend den Zeigefinger zu heben und zu fragen, ob du auch Besuchern ohne JavaScript gestattest, deine Seiten zu bewundern.)