gpt4 book ai didi

jquery - 防止可拖动项目落在特定元素上

转载 作者:搜寻专家 更新时间:2023-10-31 23:20:17 24 4
gpt4 key购买 nike

我已经创建了多个可拖动的热点,但我的问题是在同一个容器中只有一个部分;在该部分中,我不想删除可拖动元素。请检查以下代码段。

$(".draggable").draggable({
containment: ".container",

});
.container{
width:100%;
position:relative;
height:300px;
background:#eaeaea;
}
label{display:inline-block;}
.draggable {
position: absolute!important;
min-width: 85px;
border: none!important;
background: transparent!important;
top:0;
left:0;
z-index:1;
}
.draggable label:first-child{
background:blue;
border:1px solid green;
width:10px;
height:10px;
border-radius:50%;
float:left;
margin-top:3px;
margin-right:10px;
}

.draggable label:last-child {
overflow: hidden;
max-width: 100px;
word-wrap: break-word;
padding: 5px;
background: #9afff1;
}

.section {
position: absolute;
width: 240px;
height: 100px;
background: #dfbaba;
bottom: 0;
border: 1px solid #d5a1a1;
}
<link href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet"/>
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

<div class="container">
<div class="draggable">
<label></label>
<label>hotspot1</label>
</div>
<div class="draggable">
<label></label>
<label>hotspot2</label>
</div>
<div class="draggable">
<label></label>
<label>hotspot3</label>
</div>

<div class="section">
</div>
</div>

在上面的代码片段中,热点可以放在那个红色背景部分上。如何防止这种情况?请检查下图以便更好地理解。

image

另外on drop如何检查两个热点是否重叠?如果两个热点相互重叠,那么我想更改类,这将改变热点的方向。谢谢

最佳答案

你可以在没有任何插件的情况下实现这一点

$(document).ready(function(){

$(".draggable").draggable({
containment: ".container" ,
stop: function(event,ui ) {
if($(this).draggable('option','revert'))
$(this).draggable('option','revert', false );
},
});
//this will prevent any collision
$(".draggable" ).droppable({
drop: function( event, ui ) {
ui.draggable.draggable( 'option', 'revert', true );
}
});
// this will prevent drop on section
$( ".section" ).droppable({
drop: function( event, ui ) {
ui.draggable.draggable( 'option', 'revert', true );
}
});

});

关于jquery - 防止可拖动项目落在特定元素上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42223287/

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