2010-05-13 2 views
2

В целом resizable() работает нормально. Здесь я попадаю в проблему.jQuery Resizable() UI Задача

  1. У меня есть div, который содержит некоторые изменяемые размеры элементы, которые отлично работают (resizable() применяется к ним в какой-то момент).
  2. пользователь может сохранить элементы для последующего просмотра (в innerHTML из DIV будет сохранен в массив JavaScript, то ДИВ очищается, чтобы они могли сделать что-то еще)
  3. Когда элементы будут помещены обратно на DIV (из массива) - Я делаю $ ('# divname'). Append (arrayname [i]); не - элементы больше не изменяемые (хотя визуально они имеют изменяемый размер классов/ручку на них)

Вот что я пытался до сих пор (ни один из которых работали):

  1. После append(), я повторно инициализирую resizable - $ ('# items'). resizable();
  2. После добавления строки(), удалите, затем повторно добавьте изменяемый размер - $ ('# items'). Resizable ('destroy'). Resizable();

Любая помощь приветствуется - спасибо.

ответ

2

Хорошо - я понял, что делать, чтобы решить эту проблему.

Перед сохранением/хранение innerHTML из DIV (, как описано в шаге # 2 в моем вопросе), я уничтожил «изменяемого» состояние каких-либо элементов там, как это (пример селектора):

$('#divid .resizable_items').resizable('destroy'); 

Тогда я хранил innerHTML в DIV в массив JavaScript.

Далее, когда заселив DIV, я добавил элемент массива и повторно инициализируется в изменяемый размер предметов, как так:

$('#divid').append(arrayname[i]); 
$('#divid .resizable_items').resizable(); 

Так что вопрос, кажется, в том, что хранение innerHTML, который содержал изменяемыми() элементы не работал при повторном добавлении/добавлении/рендеринге, но уничтожении resizables ПЕРЕД записью innerHTML, а затем повторной инициализации resizable() после их возврата, все работает правильно.

Таким образом, это кажется, чтобы решить проблему - надеюсь, что это поможет.