我正在使用带有使用backbone.js 的rails 应用程序的jQuery UI。我想做一个可拖动的元素?我必须把这个功能放在哪里:
$('.area-tools').draggable({handle: ".grap-area", "containment" : "parent"})
是在视图中吗?在渲染功能之后?因为,初始化函数没有找到我的元素,我认为 DOM 还没有创建?
所以,我这样做了:
class Myapp.Views.Tools extends Backbone.View
template: JST['pdfs/tools']
tagName: "div"
className: "pdf-tools"
events:
'click div.rect' : 'drawRect'
initialize: ->
@previewWrapper = $('.preview')
@count = 0;
@
render: ->
$(@el).html(@template())
@initColorPicker()
this
initColorPicker: ->
$('.area-tools').draggable({handle: ".grap-area", "containment" : "parent"})
drawRect: (event) =>
newElement = $('<div id="resizable" class="resizable"><div class="close">x</div><input type="text" name="text_' + @count++ + '" /></div>');
@previewWrapper.append(newElement);
newElement.draggable().resizable();
好吗?有什么推荐吗?