2010-03-17 19 views
5

Jak uzyskać wartości Internet Explorera równoważne: window.screenX i window.screenY w Firefoksie? Widziałem niektóre "rozwiązanie": window.screenLeft i window.screenTop, ale jest nie prawidłowe. Te właściwości podają wewnętrzne współrzędne.Zdobądź pozycję w oknie przeglądarki Internet Explorer

Przesuwam okno i potrzebuję wartości do użycia z window.moveTo(), aby przywrócić pierwotną lokalizację.

Odpowiedz

0

Równoważne właściwości nie wydają się istnieć w oknach przeglądarki Internet Explorer. Czy widziałeś metodę window.resizeBy(w, h)? Korzystanie że można rozwijać poprzez określonej kwoty, a następnie kurczą się z powrotem w dół za pomocą wartości ujemnych (lub vice versa):

window.resizeBy(300, 300); // expand window by 300x300 pixels 

window.setTimeout(function() 
{ 
    window.resizeBy(-300, -300); // back to original size 
}, 10000); 
+0

Niestety, ja zawiedli pytanie i zredagowane. Wygląda na to, że w międzyczasie odpowiadałeś na oryginał. – Ilya

0

Istnieje lat odkąd zrobiłem żadnego programowania MSIE, ale z grubsza pamiętać używając coś jak ten

  • Zapisz screenLeft i góry jako okno świetnym miejscu (to jest źle, ale czytaj dalej)
  • podczas przywracania pozycji, window.moveTo (zapisana pozycja)
  • (prąd screenLeft> zapisywane lewej) window.moveBy (-1 , 0)
  • samo dla pozycji y

Chodzi o to, że umieszczenie okna w złym położeniu, a następnie skorygować to krok po kroku

+0

Dzięki! Spróbuję nieco później jakieś rozwiązanie oparte na tym pomyśle. Zastanawiam się nad przesunięciem okna na niewłaściwą pozycję, obliczeniem różnic i ponownym przejściem. – Ilya

+0

Mój kod oparty na twoich pomysłach wydaje się działać na razie. Dzięki jeszcze raz! – Ilya

2
 
var saveLeft = window.screenLeft; 
var saveTop = window.screenTop; 
window.moveTo(saveLeft, saveTop); 
var savePos = [ 
    saveLeft + (saveLeft - window.screenLeft), 
    saveTop + (saveTop - window.screenTop) 
]; 

wydaje się działać

+0

Następnie przejdź i przesuń okno, jak chcesz. Aby przywrócić pierwotną pozycję, użyj window.moveTo (savePos [0], savePos [1]). – Ilya

Powiązane problemy