Immer scrollen ein div-element und nicht die Seite selbst

Ich habe ein Seitenlayout mit einer inneren <div id="content"> element enthält wichtige Sachen auf der Seite. Der wichtige Teil über das design:

#content {
  height: 300px;
  width: 500px;
  overflow: scroll;
}

Nun, wenn der text enthalten ist, größer als 300px, ich muss in der Lage sein, um scrollen Sie es. Ist es möglich zu scrollen <div>, auch wenn die Maus nicht schwebt das element (Pfeil-Tasten sollten ebenfalls funktionieren)?

Beachten Sie, dass ich nicht wollen, deaktivieren Sie die 'global' scrolling: Es sollten zwei Scrollbalken auf der Seite, die Globale scrollbar und die Bildlaufleiste für die <div>.

Das einzige was sich ändert ist, dass die innere <div> sollte immer scrollen, es sei denn, es kann nicht mehr verschoben (in dem Fall die Seite sollte anfangen zu scrollen).

Ist das möglich irgendwie?

Bearbeiten

Ich denke, das problem war ein bisschen verwirrend, also werde ich anfügen einer Sequenz, wie ich es möchte, um zu arbeiten. (Khez geliefert bereits ein proof-of-concept.)

Dem ersten Bild ist, wie die Seite aussieht, wenn Sie geöffnet.

Nun, die Maus sitzt in der angezeigten position und Schriftrollen und was passieren sollte ist, dass

  • Zuerst das innere div scrollt den Inhalt (Abb. 2)
  • Das innere div hat fertig zu scrollen (Abb. 3)
  • Das body-element scrollt der div selbst wird verschoben. (Abb. 4)

Hoffe es ist etwas klarer jetzt.

Immer scrollen ein div-element und nicht die Seite selbst (Bild Dank gomockingbird.com)

  • Ich habe versucht, eine mit window.onscroll zu erfassen, die Veranstaltung. Es funktioniert aber definitiv zu wackelig. Haben Sie einen Blick auf meine jsfiddle. Nur posten Sie hier, weil vielleicht, nur vielleicht wird es Funken eine Idee in jemandes Geist.
  • eine min im arbeiten auf einer Geige für Ihre update
  • ich geschrieben eine Antwort auf dein update
InformationsquelleAutor Debilski | 2011-04-15
Schreibe einen Kommentar