2010-02-13 10 views
12

Ich versuche, ein div in der Mitte des iPhone-Ansichtsfensters zu positionieren. Grundsätzlich, wenn Sie ein Bild treffen, erscheint es in der Mitte des Bildschirms, unabhängig davon, wo Sie auf der Seite gescrollt haben, bevor Sie geklickt haben.Aktuelle Position des Ansichtsfensters in Mobile (iPhone) Safari abrufen

Es ist nicht so einfach wie es nur Position machen: behoben; Dadurch wird der Ursprung oben auf der Seite und nicht im oberen Bereich des Ansichtsfensters angezeigt.

Ich kann auch nicht so etwas wie Scroll-Ereignisse erkennen und verfolgen, wo ich gerade scrollte, da das Javascript, das ich schreibe, nur in die Seite eingefügt und ausgeführt wird, wenn das Popup ausgelöst wird.

Gibt es eine iPhone-spezifische JavaScript-API oder etwas, das ich verwenden kann, um die aktuellen Ansichtsfensterkoordinaten zu erhalten?

Danke, Toby

Antwort

15

Stupidly einfach.

var scrollX = window.pageXOffset; 
var scrollY = window.pageYOffset; 

... gibt Ihnen die aktuelle Fensterposition.

+6

Ich glaube nicht, dass dies für etwa 30% der Leute funktioniert (also die -2 auf Ihrer Antwort). Funktioniert nicht für mich. Immer 0 zurück. – Peter

+3

Stellt sich heraus, wenn Sie die Scroll-Position eines Dokuments in einem iFrame überprüfen, das nicht scrollt, gibt immer 0 zurück und Sie müssen überprüfen parent.window.pageYOffset ... – Peter

+1

Hrm, ich bin nicht in einem iframe und es gibt immer noch nur 0 für mich zurück. – jennz0r

Verwandte Themen