earlierから隠された要素の高さを取得する関数Javascriptを書くとき、誰かが私にPrototype関数getDimensions()を呼んでくれました。この例では、「visibility:hidden; position:absolute; display:block;」を設定して、clientHeight が表示されている場合にはとなるようにすることができます。その後、彼らはそれをすべて元に戻し、あなたのビジネスについて行くことができます。私はプロトタイプを使っていないが、それはうまくいくと思うだろう。しかし、私自身のコードで同じ関数を模倣しようとすると、 "position:absolute;"測定を中止した。これを使わなくてもうまく動作しますが、その使い方は設計を歪ませずに1秒間にこれを行うことができるものです。私のバージョンは以下の通りです。それがなぜ機能しないのでしょうか?Javascript clientHeight inconsistency
var objStyle = obj[objName].style;
// Record original style values
var visibility = objStyle.visibility;
//var position = objStyle.position;
var display = objStyle.display;
// Modify object for measuring
objStyle.visibility = "hidden";
//objStyle.position = "absolute";
objStyle.display = "block";
// Measure height
height = obj[objName].clientHeight;
// Fix object
objStyle.visibility = visibility;
//objStyle.position = position;
objStyle.display = display;
// Return height
return parseInt(height);
ご協力いただきありがとうございます。
どのブラウザをテストしていますか? 「作業していない」とは、エラーが発生したことを意味しますか? 0?何? –
上記のとおり、測定値が不正確です。私が正しく覚えていれば、40〜50ピクセル程度の正確な高さに達していないことがわかりました。ありがとうございます – bloudermilk
ページ上にdoctypeを使用していますか? –