gpt4 book ai didi

jquery - 使用边距居中的可排序元素 : 0 auto snaps to left while sorting

转载 作者:行者123 更新时间:2023-12-03 22:52:10 25 4
gpt4 key购买 nike

我有一个可排序的 Jquery UI,其中可排序框使用 margin: 0 auto 在其容器中居中。

我在可排序中使用 axis: 'y' 设置,以便框只能垂直移动。

排序时,拖动的框移动到容器的左侧

将draggable与axis: y一起使用不会导致此问题,它似乎与可排序小部件有关。

我在 jsfiddle 中复制了该错误。有什么想法吗?

最佳答案

问题是,jQuery UI 适用 position:absolute拖动时 - 导致元素位于 top:0 , left:0最接近的定位元素或窗口。

解决此问题的一个选项是使用自定义定位助手进行拖动 helper option 。您可以使用 jquery UI position() 相对于原始元素轻松定位助手的实用方法如下:

$('#container').sortable({
axis: 'y',
helper: function(event, elm) {
return $(elm).clone().position({
my: "left",
at: "left",
of: elm
});
}
});
* { /*for stack snippet demo*/
margin: 0;
padding: 0;
}
#container {
width: 200px;
text-align: center;
height: 300px;
border: 1px solid green;
position: relative;
}
.draggable {
width: 100px;
height: 100px;
background: yellow;
margin: 10px auto;
cursor: move;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<div id="container">
<div class="draggable"></div>
<div class="draggable"></div>
</div>

关于jquery - 使用边距居中的可排序元素 : 0 auto snaps to left while sorting,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6340783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com