[英]JQuery: Prevent div from collapsing when element hides()
當我的表單被提交時,表單“滑出”並使用$.get()
,我加載另一個頁面並將其滑入。在隱藏表單和下一頁的顯示之間,div崩潰和我的所有頁腳的東西簡要地結束了表單的位置。
然后,當“下一頁”完成加載時,頁腳返回到底部(在新頁面內容下)。 因為表單的大小可能會有很大變化,我試圖避免為DIV指定高度。
有沒有辦法防止div改變?
碼:
$("#MyForm").hide("slide", { direction: "left" }, 250, function () {
$.get("../NewPage.html", function (data) {
$("#NewPagePlaceholder").html(data);
$("#NewPagePlaceholder").show("slide", { direction: "right" }, 250);
});
});
你在用CSS嗎? 我會做一個假設(我知道但是我看不到任何代碼),你使用display:none;
要隱藏div,請嘗試使用visibility:hidden
。 如果你正在使用JQuery,你可以在選擇器中添加一個css()方法,並將可見性設置為隱藏。
@ user1394965說的是什么。 這是一個簡單的例子:
.hide()
將使對象的css屬性為display: none
,這將刪除它在頁面上占用的空間。 visibility: hidden
屬性會使其隱藏但仍保留頁面上的空間。
所以,而不是做:
$('#elementId').hide();
請執行下列操作:
$('#elementId').css('visibility', 'hidden');
上面的其他選項可能更好,您可以選擇根據子div設置hieght,但很難知道這是不是看到任何代碼是一個好主意。
例如(未經測試):
var height = $('#childdiv').height();
$('#childdiv').parent().css('height', height);
僅在動畫期間指定div的高度。 也就是說,在滑出舊表單之前,將div更改為相同的高度。 在新表單滑入后,刪除此設置高度。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.