Re: [問題] javascript 取得瀏覽器長寬的問題
※ 引述《TonyQ (骨頭)》之銘言:
: ※ 引述《kewl (痴)》之銘言:
: : 取得瀏覽器長跟寬我知道可以用下面的用法
: : var w = windows.document.body.clientWidth // 取得 width
: : var h = windows.document.body.clientHeight // 取得 height
: : 那請問有沒有辦法在瀏覽器的大小改變的同時改變 w 跟 h 的值阿
: : 或是請問 javascript 有辦法取得 "改變視窗大小" 這個事件嗎
: : 多謝指點囉 :)
: body 上的 onresize 事件可以取得
的確是用 onresize 喔 多謝:)
: (Fx跟IE的event name好像不一樣,
: 印象中一個是 onresize 一個是resize , 請確認一下 . )
: 還有我之前做的印象,這兩個值在IE下,可能只能抓到最大時候的值。
: 我記得我後來是用
: document.documentElement.clientWidth
: document.documentElement.clientHeight
: 這兩個去抓。
: 我可以確定IE ok , Fx我那時候因為有用activeX的關係就沒另外測了... :P
實際上我是要做類似 lightbox 那樣的 DOM
就像下面程式碼
HTML
----------------------
<div id = "bg"></div>
<a href = "javascript:show();">Click Me</a>
css
-----------------------
#bg {
background: #000000;
position: absolute;
left: 0;
top: 0;
filter: Alpha(opacity = 60);
opacity:0.6;
-moz-opacity:0.6;
display: none;
}
javascript (有用到 prototype 類別庫)
--------------------------
var rsize = function () {
$("bg").style.width = window.document.body.clientWidth;
$("bg").style.height = window.document.body.clientHeight;
};
windows.onresize = rsize;
function show() {
$("bg").style.width = window.document.body.clientWidth;
$("bg").style.height = window.document.body.clientHeight;
$("bg").style.display = "block";
}
以上可以正常運作
IE、FireFox 皆可
可是我如果把 resize 裡面的
$("bg").style.width = window.document.body.clientWidth;
(height略..)
換成
$("bg").style.width = document.documentElement.clientWidth;
(height略..)
一旦 觸發 resize 以後,整個 div 區域就會不見 @@
不知道是不是我用錯了方法 ?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.139.134.77
→
10/09 01:32, , 1F
10/09 01:32, 1F
→
10/09 01:34, , 2F
10/09 01:34, 2F
→
10/09 01:34, , 3F
10/09 01:34, 3F
→
10/09 01:35, , 4F
10/09 01:35, 4F
推
10/09 08:04, , 5F
10/09 08:04, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 4 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章