私が持っているこのコードを以下に示します。この場合、JQuery のようなアニメーションで要素のサイズを変更するにはどうすればよいですか? 詳細はコード内のコメントとして記述されます。
テンプレート:
<script id="content_template" type="text/template">
<div
class="content"
style="position: absolute;
top:<%= top %>px;
left:<%= left %>px;
width:<%= width %>px;
height:<%= height %>px; "
></div>
</script>
モデル:
var FrameObject = Backbone.Model.extend({
defaults: {
top: 0,
left: 0,
width: 1,
height: 1
}
});
コレクション:
var FrameObjects = Backbone.Collection.extend({
model: FrameObject
});
オブジェクト ビュー:
var Object_view = Backbone.View.extend({
template: _.template($("#content_template").html()),
render:function(){
return this.template(this.model.toJSON());
}
});
オブジェクト コンテナ ビュー:
var App_view = Backbone.View.extend({
el: $(".container"),
events: {
"click .container": "create_object"
},
create_object: function(event){
var frame_object = new FrameObject({
top: event.pageX,
left: event.pageY,
width: 100,
height: 100
});
frame_objects.add(frame_object);
var object_view = new Object_view({model: frame_object});
this.$(".container").append(object_view.render());
/* here I want to change the 'top' & 'left' attributes of the object model
and want my object_view to animate to that position. Same as it would do for -
someElement.animate({top: newTop, left: newLeft});
*/
}
});