jquery ui - Accordion 折叠面板的Draggable拖动效果

赵明亮
2023-12-01

jquery ui是比较成功的ui设计,但是很多组件都是内置的方法,如果要实现一些想要的特定效果,很有可能涉及到重写,但是重写是能避免的尽量避免。

比如我想在Accordion 折叠面板的Draggable拖动效果,其实如果要求不高,ui库给的两个效果叠加,就完事了,但是出现移动的时候面板响应的情况。

我的解决方案是,在移动事件被触发的时候,disable面板,在结束的时候,使能面板。代码如下:

function drag_accordion(item) { 
    item.draggable({
        containment: "#work_center",
        start: function (event, ui) {
            item.accordion("option", "disabled", true);
        },
        stop: function (event, ui) {
            item.accordion("option", "disabled", false);
        }
    });

    item.accordion({
        collapsible: true,
        heightStyle: "content"
    });
}

分享出来,希望对大家有所帮助。

 类似资料: