簡體   English   中英

JQuery:當元素隱藏時阻止div崩潰()

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM