Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 滚动时jQuery可排序包含中断_Jquery Ui_Scroll_Jquery Ui Sortable - Fatal编程技术网

Jquery ui 滚动时jQuery可排序包含中断

Jquery ui 滚动时jQuery可排序包含中断,jquery-ui,scroll,jquery-ui-sortable,Jquery Ui,Scroll,Jquery Ui Sortable,我正在开发一个使用可排序列表的小部件,当容器滚动时,我遇到了一个小问题。我不希望超出的范围,因此在将可排序应用于列表时,我设置了包含:“parent” 容器不滚动时,安全壳工作正常。但是当它这样做的时候,如果一个项目被拖到列表中未显示的任何一端,则容器将按预期停止工作,并且该项目将超出显示范围 我不确定我是否遗漏了一些可排序API,或者这只是一个jQueryUI错误。以下是我设置的选项: $(".sortable").sortable({ axis: "y", containme

我正在开发一个使用可排序列表的小部件,当容器滚动时,我遇到了一个小问题。我不希望
  • 超出
    的范围,因此在将可排序应用于列表时,我设置了
    包含:“parent”

    容器不滚动时,安全壳工作正常。但是当它这样做的时候,如果一个项目被拖到列表中未显示的任何一端,则容器将按预期停止工作,并且该项目将超出显示范围

    我不确定我是否遗漏了一些可排序API,或者这只是一个jQueryUI错误。以下是我设置的选项:

    $(".sortable").sortable({
        axis: "y",
        containment: "parent",
        cursor: "move",
        items: "li",
        tolerance: "pointer",
    });
    
    容器的CSS如下所示:

    .list-holder {
        max-height: 250px;
        overflow-y: auto;
        overflow-x: hidden;
    }
    

    这显示了两种情况,有滚动和无滚动。

    将此代码添加到您的ul

    ul{
        max-height: 240px;
        overflow: hidden;
    }
    
    元素向下滚动,因为实际列表高度仍然存在于页面中,即使我们看不到它


    这是修改后的

    虽然这个答案解决了最初的问题,但它导致了一个不同的问题。注意,现在列表(9个元素)没有完全显示,因为它的溢出被隐藏了。现在列表本身就是滚动元素。现在更清楚的是,包含的限制是列表的滚动高度,而不是它的高度。