我使用单页应用程序,在3页中创建3个Gridstack。
如果我一页一页地打开,则调整小部件大小的速度对于每个页面来说都会变慢。
但是,如果我重新加载页面就可以了。
我使用骨干路由器打开每个页面(而不是重新加载页面)。
这是我的代码:
Grid-satck.js
createGridStack: function(gridEl) {
var options= {
animate: true,
width: 12,
cell_height: 50,
resizable: {
handles: "e, se, s, sw, w"
}
};
$(gridEl).gridstack(options);
}
模板:div class ='grid-stack'/>
HomePageLayout.js
return Backbone.Marionette.LayoutView.extend({
template: "template",
onShow: function() {
createGridStack($(".grid-stack"));
this.gridStack = $(gridStackEl).data('gridstack');
this.gridStack.movable('.grid-stack-item', false);
this.gridStack.resizable('.grid-stack-item', false);
}
})
ClientLayout.js
return Backbone.Marionette.LayoutView.extend({
template: template,
onShow: function() {
createGridStack($(".grid-stack"));
this.gridStack = $(gridStackEl).data('gridstack');
this.gridStack.movable('.grid-stack-item', false);
this.gridStack.resizable('.grid-stack-item', false);
}
})
LayoutSetting.js
return Backbone.Marionette.LayoutView.extend({
template: "template",
onShow: function() {
createGridStack($(".grid-stack"));
this.gridStack = $(gridStackEl).data('gridstack');
}
})
最佳答案
尝试
this.gridStack.removeAll();
要么
destroy()
参见文档here
关于javascript - 如何在创建新网格之前销毁gridstack?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29359353/