• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

jQuery: scrollTop für mehrere IDs zusammenlegen

Failix

Neues Mitglied
Hallo zusammen,

ich arbeite mich gerade in jQuery ein, das meiste klappt bereits sehr gut. Manchmal bleiben aber Fragen offen, z. B. hier:

$("#link-seven").click(function() {
$('html, body').animate({
scrollTop: $("#seven").offset().top - 100}, );
});

Diese Funktion bewirkt beim Klick auf den Link mit der ID "link-seven" ein Scrollen zum Element mit der ID "seven" mit 100 Pixeln Versatz. Nun habe ich aber, wie die Bezeichnungen vielleicht vermuten lassen, sieben Links und sieben Sprungziele auf einer Seite. Um jedes Sprungziel mit einem Offset von 100 Pixeln zu erreichen, könnte ich nun natürlich diese Funktion noch sechsmal niederschreiben und jeweils die IDs ändern. Ich vermute aber, dass es auch einfacher und mit weniger Code geht. Könnte mir bitte jemand auf die Sprünge helfen?

Danke und Gruß
Felix
 
Werbung:
@Sempervivum Vielen Dank, der Code funktioniert hervorragend! Ich verstehe auch, was er tut, wenngleich mir noch nicht alle Elemente daraus geläufig sind. Es gibt halt immer etwas zu lernen.

Für Sprungziele mit Versatz ohne jQuery hatte ich mir mal diesen Workaround gegoogelt:

<div style="position:relative;">
<div style="position:absolute; top:-100px;" id="seven"></div>

[Content]

</div>

Aber das erzeugt halt zusätzliche Div-Suppe im Quellcode, was ich gern vermeide.
 
Werbung:
Zurück
Oben