2011-10-28 33 views
5

Trong đầu html:hiển thị sống width và height giá trị về việc thay đổi cửa sổ thay đổi kích thước

<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> 

Trong nội dung html:

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

Nó hoạt động tốt. Câu hỏi đặt ra là: làm thế nào tôi có thể có nó để hiển thị các giá trị chiều rộng/chiều cao trong khi thay đổi kích thước trình duyệt? Giống như ở đây http://quirktools.com/screenfly/ ở góc dưới cùng bên trái.

Rất cám ơn!

+0

thực hiện điều này (đối với những người trong một vội vàng!) sự giúp đỡ câu hỏi stackoverflow qua? http://stackoverflow.com/questions/641857/javascript-window-resize-event – user800612

+0

Tôi đã tìm thấy mã ở trên trên web. Tôi hoàn toàn là người mới bắt đầu. Nếu bất cứ ai có thể viết toàn bộ mã (kết thúc với mã của tôi ở trên) mà sẽ là tuyệt vời. cảm ơn. –

Trả lời

11

Liên kết với window.onresize. Không sử dụng document.write(). Đặt <p> vào HTML của bạn và đặt cho nó một id. Sau đó chỉ cần thiết lập các innerHTML của nguyên tố này trực tiếp:

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

Nó hoạt động tốt trên thay đổi kích thước cửa sổ, cảm ơn rất nhiều. Làm thế nào tôi có thể hiển thị nó lần đầu tiên khi mở trang hoặc sau khi tải lại? –

+0

@ user9508 - Tôi đã cập nhật câu trả lời của mình. – gilly3

+0

nó hoạt động như một sự quyến rũ! –

2

Hoặc, nếu bạn đã sử dụng jquery, bạn có thể sử dụng .resize(handler) để nắm bắt sự kiện thay đổi kích thước và .resize() mà không cần bất kỳ thông số để kích hoạt sự kiện ban đầu khi cửa sổ được tải xong.

Như thế này:

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

Demo in Fiddle

13

Tôi thích giải pháp gilly3, nhưng nó sẽ là hữu ích để có mã đầy đủ

<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> 
Các vấn đề liên quan