取消了自定义绑定和慢速处理

Knockout custom binding and slow processing

本文关键字:处理 绑定 自定义 取消      更新时间:2023-09-26

我使用Knockout 3.0将表数据呈现到网页。

它将大约200行加载到表中,并且我正在使用一个自定义绑定处理程序来允许在表列中进行拖放功能。

该表从数据树结构中获取数据(每个绑定多个用于遍历(

问题是,页面在Internet explorer中加载非常慢,大约需要15秒,而Firefox和chrome与IE相比非常快(大约3秒(。

我精简了代码,发现我的一个自定义绑定(即可丢弃的绑定(造成了问题。

如何在IE中提高渲染速度。(6,7,8,9(

ko.bindingHandlers.droppable = {
    init: function (element) {
        $(element).droppable({
            hoverClass: "ui-state-active",
            activeClass: "ui-state-hover",
            accept: ".ui-draggable", //  .selected
            tolerance: "pointer",
            drop: function (event, ui) {
                var data = ko.dataFor(element);
                // Gets dragged item and manipulates the data
            }
        });
    }
};

在类似<td class="outerDroppable b" data=bind="droppable"> 的表列中调用

我想到的可能选项

  1. 加载整个表数据后应用自定义绑定??(但我怎么能做同样的事(

  2. 我还尝试使用延迟更新插件

您可以尝试这个线程中给出的解决方案:如何使我的jquery可拖动/可丢弃代码更快?

这么多空投目标的存在似乎使性能变得如此缓慢的如果可能,尝试将表格设置为单个投放目标,然后根据液滴中的位置数据计算目标表格单元格事件