我試圖讓一些動畫在Backbone視圖的渲染操作期間工作,當我將基礎模型的數據刷新到新記錄時被調用。jQuery UI動畫在動畫開始之前執行回調
SiteView = Backbone.View.extend({
initialize: function() {
this.model.bind('change', this.render, this);
},
render: function() {
if (this.model.get('name')) {
var callback = function (view) {
view.$("#activesite_name").empty().append(view.model.get('name'));
view.$("#activesite_desc").empty().append(view.model.get('description'));
$(view.el).show('drop', { direction: 'down' }, 'slow').removeClass('hidden');
};
$(this.el).filter(':visible').fadeOut(500, callback(this));
}
}
});
然而在顯示操作,從而在UI更新,然後從一個模型選擇刷新到另一個時消失正在執行jQuery UI的回調函數。
如何才能讓回調僅在元素被隱藏後才被調用?
它正在執行第一次因爲'回調(這)'是一個函數調用,它發生,而'fadeOut'參數正在評估中。 –