設定display:none無法獲取元素的尺寸
本章節介紹一下標題中設計的相關內容,希望能夠給需要的朋友帶來一定的幫助。
其實關於這個主題的文章在網路上已經很多,之所以再來重複一下,是因為很多文章並沒有說清楚無法獲取什麼樣的尺寸。
先來看一段程式碼例項:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> #box{ height:100px; background:#CCC; display:none; } </style> <script type="text/javascript"> window.onload=function(){ var obox=document.getElementById("box"); var odiv=document.getElementById("show"); odiv.innerHTML=obox.style.width; } </script> </head> <body> <div id="box" style="width:200px;">softwhy.com</div> <div id="show"></div> </body> </html>
上面的程式碼中,雖然div設定為隱藏,但是依然可以獲取它的寬度,可能很多人看到這裡疑惑了,不是說好了設定隱藏的元素無法獲取它的尺寸的嗎。下面再來看一段程式碼例項:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> #box{ height:100px; background:#CCC; display:none; } </style> <script type="text/javascript"> window.onload=function(){ var obox=document.getElementById("box"); var odiv=document.getElementById("show"); odiv.innerHTML=obox.offsetWidth; } </script> </head> <body> <div id="box" style="width:200px;">螞蟻部落</div> <div id="show"></div> </body> </html>
上面的程式碼的結果確實是顯示0,這就奇怪了為什麼這裡無法獲取尺寸呢,下面就做一下分析。像offsetWidth、offsetHeight、clientWidth或者clientHeight這樣的屬性獲取的是瀏覽器解析後的元素尺寸值,元素隱藏了,自然沒有解析,所以獲得的值是0,而第一種方式並不是獲取的元素尺寸值,而是獲取的對元素的css樣式設定中的寬高值,這個和解析後的尺寸是兩個概念。
相關文章
- display:none的元素無法獲取offsetWidth和offsetHeightNone
- jQuery無法獲取隱藏元素(display:none)寬度(width)和高度(height)的新解決方案jQueryNone
- javascript中獲取元素尺寸JavaScript
- js如何獲取指定元素的尺寸JS
- css設定span元素的尺寸CSS
- jquery設定和獲取元素的屬性jQuery
- jQuery動態設定div元素的尺寸jQuery
- js獲取元素的實際尺寸程式碼例項JS
- 設定和獲取元素固有屬性值
- Jquery如何獲取和設定元素內容?jQuery
- JavaScript獲取瀏覽器、元素、螢幕的寬高尺寸JavaScript瀏覽器
- javascript實現的設定和獲取元素屬性JavaScript
- 谷歌瀏覽器下jquery無法獲取圖片的尺寸解決方案谷歌瀏覽器jQuery
- javascript緩衝彈性方式設定元素的尺寸JavaScript
- jQuery使用css()方法設定元素的display屬性值jQueryCSS
- jquery動態設定元素的尺寸程式碼例項jQuery
- js獲取元素的方法(獲取html元素的方法)JSHTML
- 偽元素需要將其設定為塊級元素或者塊級內聯元素才能設定尺寸
- JavaScript獲取img的原始尺寸JavaScript
- javascript獲取螢幕的尺寸JavaScript
- DISPLAY 尚未設定。請設定 DISPLAY 後重試。
- JavaScript 動畫方式設定元素尺寸和透明度JavaScript動畫
- js和jQuery獲取視窗和元素尺寸簡單介紹JSjQuery
- javascript學習之路之元素獲取和設定屬性JavaScript
- 設定獲取div元素中的文字內容程式碼例項
- javascript獲取window視窗的尺寸JavaScript
- 如何使用jQuery獲取物件的尺寸jQuery物件
- IE瀏覽器下js無法獲取隱藏圖片尺寸簡單介紹瀏覽器JS
- flutter 總結: 通過 GlobalKey 獲取介面任意元素座標尺寸Flutter
- javascript如何獲取img圖片的尺寸JavaScript
- [PolicyException: 無法獲取所需的許可權。]Exception
- dlink如何設定無線路由器獲取穩定無線訊號路由器
- CSS max-width/min-width設定元素尺寸CSS
- 設定連結<a>的尺寸
- javascript使用style方式如何設定和獲取元素的float浮動屬性JavaScript
- 關於 flask_session 在登入時設定後,再其他介面獲取時為None的問題FlaskSessionNone
- JavaScript獲取指定元素的同輩元素JavaScript
- 獲取ul元素下的所有li元素