Wie bekomme ich "feste" Position eines Elements?

8

Ich möchte die Position eines Elements relativ zum Fenster (feste Position) erhalten.

Folgendes habe ich bis jetzt:

%Vor%

Aber wenn ich auf ein Thumbnail klicke, scheint es etwa 10 Pixel zu fehlen. h., es wird mir negative Werte für y geben, selbst wenn die obere Kante des Fotos etwa 5 Pixel vom oberen Rand meines Browser-Fensters entfernt ist.

    
mpen 06.09.2012, 04:51
quelle

3 Antworten

5

Aktualisierung:

Lösung hängt jetzt von JSizes und einigen Hilfsmethoden ab:

%Vor%     
mpen 06.09.2012, 05:39
quelle
1

Ihr Code sieht gut aus und sollte so funktionieren, wie Sie es erwarten.

Das heißt, .offset () hat eine "gotcha" involviert, bei der es keinen Auffüllen, Rand oder Rahmen berücksichtigt, der auf den DOM-Körper angewendet wird. Es findet den Offset des Elements in Bezug auf das Dokument, nicht das Fenster.

Ссылка

Aus der Dokumentation:

  

Hinweis: jQuery unterstützt nicht das Abrufen der Versatzkoordinaten von ausgeblendeten Elementen oder die Berücksichtigung von Rändern, Rändern oder Auffüllen, die für das body-Element festgelegt sind.

Einige CSS sollte hoffentlich die seltsamen Ergebnisse beheben:

%Vor%     
Matthew Blancarte 06.09.2012 05:11
quelle
1

Verwenden:

%Vor%

In einem JQuery-Plugin:

%Vor%

Siehe:

MarcG 30.03.2016 00:02
quelle

Tags und Links