解決Jquery easyui 中嵌套時layout不能隨瀏覽器自適應大小

用jeasy-ui的layout來佈局時,必然要重視其寫法,尤其嵌套佈局時,輕易呈現錯誤。經過一陣子的應用,總結規矩如下:
1、class定義爲“easyui-layout”的元素,必必要有style裏的height設置(width可以忽視,缺省是100%)。也可以設置fit="true",意味着將寬高設爲其父容器的寬高(必然要確保父容器有寬高值),設置fit後本來的寬高設置將失效。
2、帶有region屬性的元素,上一級容器必須是帶easyui-layout的元素。兩者層次有依附性,中心不能再包裹其他容器元素。

3、region爲"north"和"south"的層,須要設置高度,寬度無所謂。同理,east和west須要設置寬度,高度可忽視。center的高寬不必設置,由layout策畫得來。


首先解釋一下標題的含義,當我們用jQuery easyui layout 進行佈局的時候,可能會遇到這樣一個問題,那就是當手工調整瀏覽器大小,或者最大化、還原窗口的時候,layout的某個區域不能填充因爲瀏覽器擴大而產生的空白區域,這時候看起來就比較彆扭了。當然了,如果你的layout是直接放在body標籤上的,且沒有嵌套的layout的話,是不會出現layout不能自適應大小的情況的。

當佈局比較複雜,勢必就會要layout嵌套起來使用,這時候出現的頁面不能自適應大小的情況就讓我不能忍受,這個問題困擾了我幾天時間,好在有萬能的網絡,問題總會得到解決,下面就將自己這兩天查資料以及自己實踐的經驗介紹給大家,希望對以後遇到同樣問題的朋友有所幫助。但是此處並不做深入分析,因爲我也不熟悉jQuery和easyui。

先寫一個有嵌套的layout,父級基於body,包含north,center,west,east,south五個區域,子級layout基於父級的center區域,如果你打開頁面的時候,瀏覽器不是最大化,然後手工調整瀏覽器大小,就會發現問題所在。

其實,layout繼承自panel,而panel有個fit屬性,只要設置爲true,layout就能自適應父元素的大小而變化,所以只要加上fit=”true”基本就可以解決問題。
發佈了43 篇原創文章 · 獲贊 168 · 訪問量 35萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章