2016-01-21 65 views
2

我正在使用jquery創建一些新的DOM元素。我正在使用的可視化庫要求在元素添加到DOM之前傳遞大小。新DOM元素的jquery高度

但是,jquery width()/height()函數都返回0.有什麼辦法來計算這個大小?

回答

1

尺寸取決於造型,所以造型必須計算。他們必須被渲染以被測量。爲了呈現他們必須在DOM(哪怕只是瞬間):

  • 加入他們暫時以DOM(如身體)
  • 測量它們
  • 拆下它們(直到你準備將它們添加到它們的最終安放位置)

因爲這一切都發生在一個代碼/渲染週期中,您將看不到這些元素。

+0

@JonathanLam:閱讀更新。您*必須將它們添加到DOM中才能測量它們,但這並不意味着當頁面下一次呈現在屏幕上時它們必須變爲可見。 –