2013-03-12 2 views
0

В настоящее время я пытаюсь добавить несколько виджетов в контейнер.Добавление нескольких контейнеров jquery в контейнер

$("#addbutton").click(function() { 
    newid++; 
    $("#designspace").append($("<div></div>").mywigdet({id:newid,top:100,left:100,width:100,height:100,color:"blue",text:"Hello"}));   
}); 

таким образом мне нужно создать div, а затем добавить виджет в этот div. Сам виджет делает следующее: _create

... 
this._container = $('<div class="label-container" id="' + newid +'" style="position:relative; border:1px solid black;"></div>').appendTo(this.element); 
this._setOptions({ 
     'top': this.options.top, 
     'left': this.options.left, 
     'width': this.options.width, 
     'height': this.options.height, 
     'color': this.options.color, 
     'text': this.options.text 
}); 
... 

В то время как он работает, это создает один контейнер внутри другого.

Но поскольку у меня есть относительный код позиционирования в моем виджетах, этот метод не позволяет ему работать, поскольку позиция DIV-контейнера пустой является родительским.

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

Есть ли лучший способ выполнить добавление нескольких виджетов в один контейнер без создания субконтейнеров?

ответ

1

Я еще не играл с jquery-widgets. Я думаю, ваша проблема:

this._container = $('<div class="label-container" id="' + newid +'" style="position:relative; border:1px solid black;"></div>').appendTo(this.element); 

Вместо изменения this.element себя с помощью:

$(this.element).attr('id',newid); 

$(this.element).addClass('label-container'); 
... 

Edit: я бы рекомендовал заменить атрибут стиля с другим классом CSS.

JQuery CSS

JQuery addClass

+0

спасибо, добавление и редактирование оригинального DIV сделал трюк. – Ekim

Смежные вопросы