[JavaScript] scrollIntoView() scrollt das ganze Fenster statt nur einzelnes DIV

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] scrollIntoView() scrollt das ganze Fenster statt nur einzelnes DIV

    Ich habe in einem größeren Formular einen Nachschlagebutton. Dieser generiert dynamisch ein DIV und zentriert es. In diesem DIV wird per Ajax eine Liste von Elementen zur Auswahl geladen.

    Wenn die Anzahl der Elemente in der Liste die Größe des DIVs übersteigt, wird via overflow:auto ein Scrollbalken geladen.

    War ein Element bereits ausgewählt, wird dieses hellblau hinterlegt und - das ist das Problem - es muß natürlich in den Fokus gescrollt werden.

    Das dumme dabei: scrollTo() versucht immer, das ausgewählte Element so weit wie möglich an den oberen oder unteren Bildschirmrand zu scrollen. Befinden sich so wenig Elemente in der Liste, daß kein Scrollbalken da ist, heißt das, daß die Seite als ganzes kurz gescrollt wird, was extrem nervt.

    Die scrollTo()-Funktion von Prototype verhält sich genauso.

    Kennt jemand eine scrollIntoView()-Funktion, die nur einen definierten Bereich (das DIV und nicht das ganze Fenster) scrollt oder nur dann scrollt, wenn es wirklich nötig ist weil das Element außerhalb des sichtbaren Bereichs ist?

    EDIT:

    Ein Workaround fällt mir gerade ein: Via Prototype die y-Position des ausgewählten Elements herausfinden und dann manuell dorthin scrollen. Das ginge, aber einfacher wäre natürlich schöner.

    Angehängte Dateien

  • #2
    <input type="hidden" id="bla">
    document.getElementById("bla").focus();
    Die Milch bleibt ranzig!

    Kommentar


    • #3
      Eyyy, das funktioniert!
      Vielen Dank!

      Kommentar


      • #4
        hu db war down ausversehn nochma gepostet

        ja ist zwar eigentlich auch geschwuchtelt aber ist schon so die einfachste lösung
        Die Milch bleibt ranzig!

        Kommentar


        • #5
          ja ist zwar eigentlich auch geschwuchtelt aber ist schon so die einfachste lösung
          Ja, gar kein Vergleich mit dem Prototype-basierten runterscrollen. Das passt perfekt so.

          Kommentar

          Lädt...
          X