Отрегулируйте ширину в 2 деления с помощью jQuery-Resizable - PullRequest
10 голосов
/ 19 мая 2011

В настоящее время я работаю на следующей странице:

schema of the page

divResizable был изменен jQuery с использованием следующего кода в $().ready()

 $("#divResizable").resizable({ handles: 'e' });
 $("#divResizable").bind("resize", function (event, ui) {
      $('#divContent').width(850 -(ui.size.width - 175));
 });

AsВы видите, я пытаюсь увеличить ширину divContent, когда divResizable становится меньше, и наоборот.Однако в этом коде divContent не всегда «растет» только на левую сторону, иногда он распространяется на правую сторону до не относящегося к делу div, что вовсе не способствует хорошему изменению размера.

Есть ли какие-либо входные данные для более сложного метода, чтобы ширина этих двух элементов соответствовала?

Я мог бы подумать о том, чтобы установить ширину divContent равным

(start of irrelevant - divResizable.width) == 850px
  ^ e.g 1025px          ^ e.g. 175px

Как именно я бы сделал это с помощью jQuery?

Ответы [ 3 ]

15 голосов
/ 27 мая 2011

Демо - Ваш макет может справиться с этим. Если вы наматываете resizable и content вместе, вам нужно только настроить ширину resizable:

HTML

<div id="page">
  <div id="wrapper">
    <div id="resizable">resizable</div>
    <div id="content">content</div>
  </div>
  <div id="irrelevant">irrlevant</div>
</div>

CSS

#resizable  { float:left; width:175px; }
#content    { overflow:hidden; width:auto; }
#wrapper    { float:left; width:1025px; }
#irrelevant { }
2 голосов
/ 01 июля 2013

Попробуйте это:

$("#divResizanle").resizable({ handles: 'e' });
    $("#divResizable").bind("resize", function (event, ui) {
        $('#divContent').width(850 -(ui.size.width - 175));
        $('#divContent').css("left",ui.size.width - ui.originalSize.width);
    });
1 голос
/ 19 мая 2011

попробуйте обернуть ' divresizable ' и ' divContent ' в div с width , установленным на сумму двух содержащихся div

...