我有一個使用JQuery的問題。我正在編寫一個函數,根據前一個兄弟的寬度(這是一個'h4')動態調整絕對定位'ul'寬度的大小。該代碼是:使用JQuery設置和檢索寬度
$(this).children('h4').each(function (i) {
var beforeWidth = $(this).width(); // This reads for example 234
$(this).next().width($(this).width()); // This should set the width
var afterWidth = $(this).next().get(0).clientWidth; // This returns always 0
});
HTML是這樣的:
<div style="width: 30%;">
<h4>title</h4>
<ul style="position: absolute;">
<li>item 1</li>
<li>item 2</li>
</ul>
</div>
我不明白爲什麼它返回0,所以我的 'UL' 總是比相應的 'H4' 小。我不得不說,'h4'寬度是使用百分比值在CSS中設置的。
編輯:我應該說,只有當這段代碼是在一個隱藏的div(我用作模式彈出)時纔會發生這種情況。否則它按預期工作!
謝謝你們!
你可以發佈你的HTML太好嗎? :) – 2012-01-18 10:24:10
是的,對不起!它在一分鐘內即將到來! :) – Alessandro 2012-01-18 10:24:40
這似乎是一個非常複雜的做事方式,必須有更好的方法。 – 2012-01-18 10:26:27