在更改窗口大小调整时显示实时宽度和高度值

时间:2011-10-28 22:59:50

标签: javascript resize

在html头部:

<script type="text/javascript">
    var myWidth = 0, myHeight = 0;
    if( typeof( window.innerWidth ) == 'number' ) {
        myWidth = window.innerWidth; myHeight = window.innerHeight;
    } else if( document.documentElement && ( document.documentElement.clientWidth ||document.documentElement.clientHeight ) ) {
        myWidth = document.documentElement.clientWidth; myHeight = document.documentElement.clientHeight;
    } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
        myWidth = document.body.clientWidth; myHeight = document.body.clientHeight;
    }
</script>

在html正文中:

<script type="text/javascript">
    document.write('<p>' + myWidth + 'x' + myHeight + '</p>');
</script>

效果很好。问题是:如何在调整浏览器大小时显示宽度/高度值?就像这里左下角的http://quirktools.com/screenfly/一样。

非常感谢!

4 个答案:

答案 0 :(得分:16)

我喜欢gilly3的解决方案,但拥有完整的代码(对于那些匆忙的人来说是有用的)。

<script>
    window.onresize = displayWindowSize;
    window.onload = displayWindowSize;

    function displayWindowSize() {
        myWidth = window.innerWidth;
        myHeight = window.innerHeight;
        // your size calculation code here
        document.getElementById("dimensions").innerHTML = myWidth + "x" + myHeight;
    };
</script>

答案 1 :(得分:12)

绑定到window.onresize。不要使用document.write()。将<p>放入HTML中并为其指定ID。然后直接设置元素的innerHTML:

window.onresize = displayWindowSize;
window.onload = displayWindowSize;
function displayWindowSize() {
    // your size calculation code here
    document.getElementById("dimensions").innerHTML = myWidth + "x" + myHeight;
};

答案 2 :(得分:2)

或者,如果您已经在使用jquery,则可以使用.resize(handler)来捕获resize事件,并使用.resize()而不使用任何参数来在窗口加载完成时触发初始事件。

像这样:

$(window).resize(function() {
    // your size calculation code here
    $("#dimensions").html(myWidth);
}).resize();

Demo in Fiddle

答案 3 :(得分:0)

<!DOCTYPE html>
<html>
<head>
<title>How to get width of screen when window is resizing?</title>
</head>
<body>
<script>
window.onresize=function()
{
    document.body.innerHTML=window.innerWidth;
}
</script>
</body>
</html>

要了解代码每一行的含义-https://jaischool.com/javascript-lang/how-to-get-live-width-of-window-when-it-is-resizing.html