在浏览器中确定实际的查看大小

我试图确定当前浏览器窗口的实际viewPORT大小。我试过了: window.innerHeight / innerWidth document.documentElement.clientHeight / clientWidth document.body.clientHeight / clientWidth 全部返回整页大小而不是查看区域。 我想要最终实现的是强制弹出菜单出现在屏幕上(在视口中)。现在,当它显示时,它可能显示在滚动下方,用户对此不满意。我知道他们点击的地方的x,y。我只需要将它与观看区域的大小(弹出窗口的大小)进行比较,看它是否会离屏。 应该注意的是,页面显示在IFRAME中,所以如果我需要上升一个级别来获得正确的值,我可以这样做。     
已邀请:
     window.innerHeight / innerWidth    这明确地确实为您提供了视口大小(在这种情况下,iframe中的大小),但它在IE上不可用。      document.documentElement.clientHeight / clientWidth    当浏览器处于标准模式时,这会为您提供视口大小。通常用作IE的后备。      document.body.clientHeight / clientWidth    这为Quirks模式提供了视口高度。您不希望处于Quirks模式。检查文档的
<!DOCTYPE
。   我只需要将其与观看区域的大小进行比较 然后你还要看
document.documentElement.scrollTop
/
scrollLeft
。     
尝试
document.getElementById("").offsetWidth
用不同的元素ID填写上面的代码,尝试使用body标签或包装器div。     
显然,通过转到父文档,我能够获得正确的值。 谢谢!     

要回复问题请先登录注册