我有一个容器div
内的列表项。结构如下:
<div id="container">
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
我使用jQuery sortable来交换列表项,如here所示。
我想确定列表项是否被拖到包含div
之外,如果是,请将其删除。
我一直尝试做的是使用offset()
来确定列表项距div
的距离,但它会给我不一致的结果:
$( ".sortable" ).sortable({
revert: true,
update: function( event, ui ) {
console.log("difference: " + (parseInt($(ui.item).offset().top,10) - parseInt($("#importer-container").offset().top,10)) );
}
});
有时会说1.有时它会说26.如果重要,容器div
会有一个滚动条。
如何确定孩子是否在父母之外?
答案 0 :(得分:0)
$( ".sortable" ).sortable({
revert: true,
update: function( event, ui ) {
if (ui.item.closest("#container").length) {
// inside container
} else {
// outside container
}
}
});