我正在构建一个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 );
                }
            }
        }
    };

最佳答案

第三种选择是最好的选择,因为您只有一个窗口可以管理,并且内容作为输入参数提供,在这种情况下,这是一个很好的解决方案。

10-04 20:31