2012-07-28 129 views
1

我對jQuery相當陌生,但我非常喜歡它!豎起大拇指向開發商! :)如何調整一個div,在父母的div,與parentdiv也調整大小?

我的問題是關於可調整大小的功能。情況如下:

我有一個div(parent-div),在我有5個其他div(直接彼此相鄰,我們通過div-e稱他們爲div-a)。父母代表時間跨度(時間越長,代表的時間越多),五個孩子代表這個時間段內的五個階段。

現在,我希望能夠調整(比方說)child-div-c(它代表的Fase需要更多時間)。當我調整C的大小時,div的D和E必須向左移動,因爲他們的情況正在晚些時候發生,而不是更短或更長。當我調整C的大小時,parent-div也必須調整大小,因爲總時間將會更長。

我希望這很清楚。問題是:

如何將div放在resize div旁邊? 如何調整父div?

我知道$(「.selector).resizable({})事件,並且我得到了這個工作,但是當我有2個div在旁邊時,我正在調整其中一個,它不是提前移動allong

感謝

編輯:!。儘管這個問題是downvoted,我已經回答發現並提出了的jsfiddle參見接受的答案我的評論

這個問題的答案我的第二問題是這樣的:

$(".selector").resizable({ 
     resize: function(event, ui) { 
      var widthTotal = 0; 
      $(".travelcontainer > .travelfase").each(function(index, element) { 
       widthTotal = $(this).innerWidth() + widthTotal; 
      }); 
}); 

希望這會幫助別人以及:)

+0

我相信使用'寬度:100% '可能有幫助。 – Tarik 2012-07-28 21:54:23

+0

我認爲這是一個相當不錯的問題,對於剛接觸jQuery的人來說相當複雜。他清楚地表明,他一直認爲這個問題很有禮貌,並感謝人們提前幫忙,而且,由於他是jQuery的新手,這是一個相當先進的項目。我不明白人們會怎樣或爲什麼會將這個問題降級,尤其是因爲這個用戶對於SO來說是如此的新鮮。 – 2012-07-28 22:41:05

+0

@DorianGray:哪個div應該在他們的CSS中擁有該屬性? – 2012-07-28 23:44:56

回答

2

http://jsfiddle.net/MjSfy/1/它非常簡單。只需對齊float:leftdisplay:inline-block的子div。然後,每當你改變一個子div的寬度時,父母也會調整它。

更新:

使用這樣的設置div的寬度在運行時:

$("#div-a").css("width", "50px");​ 

更新小提琴:http://jsfiddle.net/MjSfy/2/http://jsfiddle.net/MjSfy/3/

+0

這是一個很好的視覺例子,但是你可以給一些你會用到的JS嗎?我覺得他的問題更多的是在事物的jQuery端 – 2012-07-28 22:42:29

+0

非常感謝!我已經成功地應用了這個工作: http://jsfiddle.net/MjSfy/4/ 有趣的是它在jsfiddle中不起作用,但它在Dreamweaver中使用時無效。我不知道爲什麼,但確實如此。我發佈它在這裏爲有相同的問題的人:) – 2012-07-29 12:21:28

+0

很高興它幫助你。請注意:問題解決後,最好結束一個問題(接受最有幫助的答案)。 – Horen 2012-07-29 12:35:48

3

如果正在使用float:left或顯示您的孩子的div display:inline-block你不應該做任何調整之前的孩子後動的孩子們。

如果您的父div具有固定的寬度,則必須計算子項的總數並手動設置(或設置動畫)。