Re: [問題] javascript 取得瀏覽器長寬的問題

看板Ajax作者 (痴)時間17年前 (2007/10/09 01:29), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串3/4 (看更多)
※ 引述《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
順帶一提,把 "document.documentElement.clientWidth" alert
10/09 01:32, 1F

10/09 01:34, , 2F
是有東西的
10/09 01:34, 2F

10/09 01:34, , 3F
真奇怪了@@ 不過問題算是解決了 還是T大
10/09 01:34, 3F

10/09 01:35, , 4F
謝謝T大
10/09 01:35, 4F

10/09 08:04, , 5F
加上單位px咧? 後來怎麼解決的?
10/09 08:04, 5F
文章代碼(AID): #172caHyv (Ajax)
文章代碼(AID): #172caHyv (Ajax)