Discussions

Q事前にDOMの高さを取得する方法

最近目にする、twitterのガジェットなどで、差し込まれる予定の要素の高さ分移動したあと、
フェードインで表示されるような演出がありますが、Ajaxなどで取得したデータを
JS経由で挿入する場合、内容がテキストだとどれくらいの高さになるか、というのは
分かりませんよね?(フォントにもよるし)

これを、事前に高さがどれくらいになるか、というのを取得する方法などはあるのでしょうか。
visibilityをhiddenにして一度DOMツリーの中に入れて高さを取得してから
ごにょごにょする、というのは思いついたのですが、なんか回りくどいしスマートじゃないなと・・。

なにかこうするといいよ、という方法があれば教えてください。

AAnswer to: 事前にDOMの高さを取得する方法

kyo_ago

要素の高さ、幅共にブラウザのレンダリングを行わないで取得する方法は無いと思います。
(DOMツリーに入れてゴニョゴニョするしか無い)

font固定+文字だけとかなら頑張ればなんとかなる可能性もありますが
画像等が入る可能性もあるならJSのみでレンダリング前に取得するのは基本的に不可能です。

Post a question

You can post JavaScript, HTML, CSS related questions with attached reference to actual codes and get the answers likewise.

Ask a question

  • 1. Click the ‘Post a question’ above

  • 2. Enter question details, reference code, and click ‘Add question’ button

  • 3. Question will be paired with the code on display

Add an answer

  • 1. Choose a question

  • 2. Enter answer details, attach the reference code and click ‘add answer’ button

  • 3. Your answer will accompanied with attached code

Tag