【问题标题】:Element is getting ui-resizable but not ui-resizable-handle元素正在获得 ui-resizable 但不是 ui-resizable-handle
【发布时间】:2015-02-12 12:01:09
【问题描述】:

我有一个元素列表,我试图在加载它们后添加 jQuery UI 可调整大小的功能,并且它们正在获取类 ui-resizable,但是具有类 ui 的 div -resizable-handle 没有被添加。

首先我开始(在你问之前,是的,我已经剥离了一些示例中不需要的代码)......

function setElementsAsResizable(elements, isResizable) {
    elements.each(function () {
        var element = $(this);
        if (element.is(':data(ui-resizable)'))
            element.resizable("destroy");
        if (isResizable)
            element.addClass("resizable");
        }
        else {
            if (element.hasClass("resizable"))
                element.removeClass("resizable");
        }
    });
}

所以我从一张白纸开始,以防元素不再可调整大小。在此之后我创建元素。

function createResizableElements(row) {
    var element = row.children(".element.resizable");
    element.resizable({
        handles: 'e',
        containment: 'parent',
        create: function (event, ui) {
            $(this).parent().on('resize', function (e) {
                e.stopPropagation();
            });
        },
        start: function (event, ui) {...},
        resize: function (event, ui) {...},
        stop: function (event, ui) {...}
    });

所以我所有的元素现在都被赋予了 ui-resizable,但并不是所有的元素都没有收到 div ui-resizable-handle 来呈现整个东西无法使用。这些元素也是可排序的(有效),当我拖放它们时,它们会经历相同的过程,但现在已被赋予 ui-resizable-handle

所以简而言之,有谁知道如何将元素设置为 ui-resizable,但获得实际调整大小所需的句柄?

【问题讨论】:

    标签: jquery jquery-ui resizable jquery-ui-resizable jquery-resizable


    【解决方案1】:

    这很尴尬。显然,这是由于 jQueryUI 中的一个错误以及这里存在的如何修复的答案:

    How do I destroy a jquery resizable without destroying child resizables?

    简短的总结:您对一个元素调用destroy,它将删除该元素的jQueryUI行为并删除该元素的所有恰好有一个子元素的句柄。

    在使用难以搜索的 jQueryUI 编码时,我必须停止查找库错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-21
      • 1970-01-01
      • 1970-01-01
      • 2022-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多