Это из-за этого:
$('div').html('');
Вы очищаете HTML внутри div. Когда вы делаете что-то изменяемого размера, jQuery UI добавляет контент, который ему нужен. Например:
<div id="lar1" class="aaa ui-resizable ui-draggable" style="position: absolute; top: 38px; left: 12px; width: 125px; height: 120px; ">
<div class="ui-resizable-handle ui-resizable-e"></div>
<div class="ui-resizable-handle ui-resizable-s"></div>
<div class="ui-resizable-handle ui-resizable-se ui-icon ui-icon-gripsmall-diagonal-se" style="z-index: 1001; "></div>
</div>
Один из способов решения этой проблемы - поместить текст в определенный контейнер и изменить его, например ::
.
$('div').live('click', function() {
$('div').removeClass('selected');
$('div .my-text').remove();
$(this).addClass('selected');
$('<div class="my-text">div #' + this.id + '</div>').appendTo($(this));
});