看板 Ajax 關於我們 聯絡資訊
※ 引述《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
kewl:順帶一提,把 "document.documentElement.clientWidth" alert 10/09 01:32
kewl:是有東西的 10/09 01:34
kewl:真奇怪了@@ 不過問題算是解決了 還是T大 10/09 01:34
kewl: 謝謝T大 10/09 01:35
buganini:加上單位px咧? 後來怎麼解決的? 10/09 08:04