2

我需要在网络浏览器中获取整个可用空间的高度,这样我就可以将其div放置在屏幕的中间位置并将其一直向下拉伸。

我认为document.body.clientHeight会起作用,但这会返回正在占用的空间量,而不是总可用空间。

我还尝试对所有内容进行“包装” div

<div id="wrapper" style="height: 100%; width: 100%;">
    //my other code
</div>

并获得它的高度,但这仍然会占用空间。

如何使用 Javascript 或 jQuery 获取 Web 浏览器中的总可用空间?

4

5 回答 5

5

来自jQuery 文档 height()

This method is also able to find the height of the window and document.

    $(window).height();   // returns height of browser viewport
    $(document).height(); // returns height of HTML document
于 2013-02-13T13:58:43.000 回答
1

我的意思是元素父级中可用的空间,你可以试试这个......

var entireHeight=$('#elementID').parent().height();

var siblingHeight=0;

var elementSiblings=$('#elementID').siblings();

$.each(elementSiblings, function() {
    siblingHeight= siblingHeight+$(this).height();
});

减去值,即

(entireHeight-siblingHeight) 

应该给你可用的空间。

希望它有所帮助.. :) 如果它不起作用,请告诉我。

于 2013-02-13T14:32:41.517 回答
1

这很简单

var max_height= screen.availHeight - (window.outerHight - window.innerHight)

于 2019-04-14T22:47:12.650 回答
0

一个简单的例子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>
        A2CARE 2.0
    </title>

    <script type="text/javascript" language="Javascript" src="jslib/jquery.js"></script>
    <script type="text/javascript">

        function getheight(){
            var d= document.documentElement;
            var b= document.body;
            var who= d.offsetHeight? d: b ;
            return who.clientHeight;

        }
        $(document).ready(function() {      
                var h = getheight();
                document.getElementById('tryme').style.height= h + 'px';
            });
    </script>
</head>
<body>  
    <div id="tryme" style="border: 2px solid red;">
        try me!
    </div>
</body>

于 2013-02-13T14:13:10.723 回答
0

你可以直接在javascript中使用

screen.width
screen.height

你可以分配喜欢

document.getElementById("parentId").style.width = (screen.width - 100)+"px";
document.getElementById("parentId").style.height = (screen.height-300)+"px"; 
于 2013-02-13T14:17:16.663 回答