开发者

Acquire Internet Explorer window position

开发者 https://www.devze.com 2022-12-23 11:40 出处:网络
How do I get in Internet Explorer values equivalent to: window.screenX and window.screenY in Firefox ?

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 loc开发者_开发问答ation.


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

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号