2014-06-12 112 views
0

我使用jquery mobile和mvc4動態構建了面板內的列表視圖。Jquery移動面板內容高度?

1)我們的第一個要求是面板應該低於標題。下面的代碼完美地工作。

$(document).on("panelbeforeopen", function (event, ui) { 
    var header = $('[data-role=header]').outerHeight(); 
    var panel = $('.ui-panel').height(); 
    var panelheight = panel - header; 

    $('.ui-panel').css({ 
    'top': header, 
    'min-height': panelheight 
    }); 

}); 

2)下一個要求是面板高度應該取決於面板裏面的數量。例如,如果我在面板中有2個li,那麼max-height應該等於2 li,那麼底部不應該有任何空的面。

請指導我

1)我想下面的代碼

$(document).on("panelbeforeopen", function (event, ui) { 

    var header = 50; 
    var panel = $('.ui-panel').height(); 
    var panelheight = panel - header; 
    var Uiinnes = $('.ui-panel-inner').height(); 

    $('.ui-panel').css({ 
    'top': header, 
    'min-height': panelheight, 
    'max-height' : Uiinnes 
    }); 

}); 

在Uiinnes獲取價值,我分配到「最大高度」,但沒有用。

+0

如果listview比_view port_短,面板看起來很醜。如果時間更長,則會導致頁面滾動。編輯:我很高興[_my code_](http://stackoverflow.com/a/17028477/1771795)爲你工作;) – Omar

+0

@奧馬爾:是的兄弟。你救了我。但它的客戶要求。所以沒有選擇。 – Ryder

+0

然後做同樣的事情,var listview = $(「。listview」,this).outerHeight(); $(this).css({「height」:listview});' – Omar

回答

0

我發現這個作品相當不錯。不知道爲什麼$('#panelListView')。height();爲什麼$('#panelListView')。height();比實際的列表視圖回來更長,但是減去21並且工作正常。可能有底部餘量。

BGecko

+0

與listview的彈出窗口執行非常相似。我實際上改變了我的代碼來使用它。 – BGecko