我有一個div元素,其自動高度可以說是300px。
點擊一個按鈕,我將它的高度設置爲500px。
我想將它的高度動畫回到其默認高度。 我知道的唯一解決方案是克隆div,存儲它的高度並相應地使用它。
一個jsfiddle example獲取div的自動高度而不克隆它
var elem = $("div").clone().height("auto").appendTo("body");
$('div').animate({"height": elem.height()});
elem.remove();
有沒有更好的辦法做到這一點?我不想克隆,因爲我的實際頁面上有大量元素。
更新: 我已創建another fiddle。如果元素還沒有載入,你將如何獲得元素的默認高度?
難道你不能將高度設置爲自動? – box86rowh 2013-04-24 03:58:50
如果我設置高度自動,那麼不會是任何動畫。我只能通過動畫設置高度。 – 2013-04-24 04:31:21
我推薦克里斯的回答 – box86rowh 2013-04-24 16:48:50