简体   繁体   中英

Acquire Internet Explorer window position

How do I get in Internet Explorer values equivalent to: window.screenX and window.screenY in Firefox ? I've seen some "solution": window.screenLeft and window.screenTop but it is not correct. These properties give inner coordinates.

I move a window and I need values to use with window.moveTo() to restore the original location.

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

Seems to work

Equivalent properties don't appear to exist for Internet Explorer windows. Have you seen the window.resizeBy(w, h) method? Using that you could grow by a specific amount and then shrink back down using negative values (or vice versa):

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

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

There are years since i did any MSIE programming, but i roughly remember using something like this

  • save screenLeft and Top as window postion (this is wrong but read on)
  • when restoring the position, window.moveTo(saved position)
  • (current screenLeft > saved Left) window.moveBy(-1,0)
  • the same for y position

the idea is that we place the window in a wrong position first and then correct it step by step

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM