在JavaScript中确定浏览器窗口的位置?

时间:2009-02-02 17:27:28

标签: javascript

出于各种愚蠢的原因,我希望能够在屏幕上检测浏览器窗口的矩形。标题栏和所有。

这是可能的,还是JavaScript仅限于其页面的视口?

编辑:我可能一直不清楚,但是查看端口是页面中窗口中可见的部分。这可能不是浏览器常用的术语,但它在图形中很常见。

3 个答案:

答案 0 :(得分:45)

对于符合标准的浏览器:

X - window.screenX
Y - window.screenY

对于IE:

X - window.screenLeft
Y - window.screenTop

请记住,implementations vary。注意多显示器设置......

答案 1 :(得分:9)

查看以下属性:

(这些不会给你窗口大小或位置,但可能允许你在具有多个监视器的系统上操作时正确解释它们)

答案 2 :(得分:-7)

从谷歌第一个结果粘贴的副本:

// Browser Window Size and Position
// copyright Stephen Chapman, 3rd Jan 2005, 8th Dec 2005
// you may copy these functions but please keep the copyright notice as well
function pageWidth() 
{
return window.innerWidth != null? window.innerWidth : document.documentElement && document.documentElement.clientWidth ?  document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;
} 
function pageHeight() 
{
return  window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ?  document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;
} 
function posLeft() 
{
return typeof window.pageXOffset != 'undefined' ? window.pageXOffset :document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;
} 
function posTop() 
{
return typeof window.pageYOffset != 'undefined' ?  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;
} 
function posRight() 
{
return posLeft()+pageWidth();
} 
function posBottom() 
{
return posTop()+pageHeight();
}