我正在构建一个Kendo UI应用程序,该应用程序具有多个(20+)个不同的kendoWindows。我想知道是否在DOM加载中为每个实例实例化性能时性能是否会成为问题。
最好只在需要一个实例时实例化,然后在它关闭时将其杀死。
我考虑的第三个选项是实例化一个kendoWindow并在打开时更改它的参数和内容。
我想我想知道的是第一种方法是否会对性能产生影响,而其他两种方法中的一种是否更好。
这是我的代码:
// Initialize all the dialogs.
function _initializeDialogs( ){
// that.dialogs is an object literal filled with jquery objects.
var dialogs = that.dialogs;
var defaults = {
resizable: false,
draggable: false,
modal: true,
visible: false,
open: setCenter
}
// Iterate over the dialogs and initialize each one as kendoWindows.
for ( dl in dialogs ){
// Assign that.dialogs[dl] to a variable.
var dialog = dialogs[ dl ];
// If DOM element exists.
if( dialog ){
// If Dialog jquery element is not already a kendoWindow.
if( !dialog.data( 'kendoWindow' ) ){
// Instantiate the kendoWindows.
dialog.kendoWindow( defaults );
}
}
}
};
最佳答案
第三种选择是最好的选择,因为您只有一个窗口可以管理,并且内容作为输入参数提供,在这种情况下,这是一个很好的解决方案。