1

Я использую плагин jquery layout и имею следующую ситуацию, что я не могу найти решение. Как сделать центральную панель постоянно увеличивать ее размер, перетащив div за нижнюю границу.jquery layout и dynamic draggable div issue

У меня есть левая панель и центральное окно. Я динамически генерирую div , когда пользователь нажимает на левую панель. Разделяются div и опустились на центральную панель. Дивы перетаскиваются и изменяются по размеру. Все работает отлично с перетаскиванием и изменением размера на видимом центре . В тот момент, когда я перетаскиваю div за дном, полоса прокрутки на появляется в центральной панели, и кажется, что центральная панель расширяется до , размещая новую позицию перетаскиваемого div. Но как только я попробую изменить размер div или добавить еще один div, он переходит в верхнюю часть div и сбрасывает полосы прокрутки. Я проверил центральную высоту div в firebug и остался на той же высоте, когда инициализировал даже после перетаскивания нового div за низом.

Адрес тестовой страницы html.

Просто скопируйте/вставьте полностью на страницу html. На левой панели нажмите кнопку «Добавить новый», чтобы добавить новый div, который можно перетаскивать и изменять размер.

  1. Нажмите на кнопку «Добавить»
  2. Перетащите новодобавленный ДИВ за пределы нижней части центральной панели.
  3. В центральной панели отображается полоса прокрутки, как это предполагается.
  4. Если вы проверить высоту центра Div в в поджигатель, он не меняется
  5. Теперь попытайтесь изменить размеры вновь добавленный DIV, перетаскивая ручку
  6. Он прыгает на вершину и центр коробки теряет свою полосу прокрутки.

Я не мог вставить полный HTML-страницу, так вот ссылка на код в нижней части этой нити http://groups.google.com/group/jquery-ui-layout/browse_thread/thread/ca922aa44c0048ee

А вот тест ссылка http://jsfiddle.net/yZc63/

ответ

0

Я не удивляюсь, что никто раньше сталкивалась с этой ситуацией? Даже без плагина макета мое решение не очень красивое. Чтобы смоделировать страницу без плагина макета, мне пришлось удерживать верхнюю и левую панели с помощью позиции: fixed property в css. И нет никакого центра div. Я добавляю новый div непосредственно в тело html. Причина в том, что я не хочу видеть дополнительные полосы прокрутки в верхней части полосы прокрутки браузера. Другими словами, центральная панель должна прокручиваться при перемещении полос прокрутки браузера. Я прилагаю решение, чтобы у вас появилась идея.

Я открыт для любого решения даже без плагина, если я смогу имитировать предыдущий прикрепленный файл, используя любой другой подход. Я присоединяю свою страницу без плагина, но не уверен, что это единственное элегантное решение.

Вы можете проверить решение здесь http://jsfiddle.net/c7wrT/

добавляет динамический DIV непосредственно в HTML тело хороший подход?

0

Я столкнулся с той же ситуацией, и этот ответ помог. https://stackoverflow.com/a/33004821/2139859. Обновлено Сценарий:http://jsfiddle.net/bababalcksheep/yZc63/11/

$(".removalbe-recom").draggable({ 
    appendTo: "body", 
    helper: "clone", 
    revert: "invalid", 
    cursor: "move", 
    containment: "document", 
    zIndex: 10000, 
    scroll:false, 
    start: function (event, ui) { 
    $(this).hide(); 
    }, 
    stop: function (event, ui) { 
     $(this).show(); 
    } 
});