【发布时间】:2023-03-15 05:35:01
【问题描述】:
我正在使用 jQuery UI 制作一些可以拖放到地图上的图钉。
每个图钉都需要与其他图钉留出一定的空白空间(不能放置在任何其他图钉的大约 30 像素范围内),在拖动过程中会在其周围显示一个黑色光环。目前可以将引脚拖到上方并放置在彼此的顶部,而我希望引脚被拖动以围绕已放置的任何引脚进行操作,如下所示:
有没有足够简单/轻量级的方法来做到这一点?提前致谢!
$(document).ready(function() {
$(".pin").draggable({
grid: [ 5, 5 ],
start: function(e, ui) {
$(this).addClass('placed');
$('.placed').css('box-shadow' , '0 0 0 15px rgba(0, 0, 0, 0.3), 0 7px 10px 0 rgba(0, 0, 0, 0.7)');
},
stop: function(e, ui) {
$('.pin').css('box-shadow' , '0 0 0 0 rgba(0, 0, 0, 0), 0 3px 8px 0 rgba(0, 0, 0, 0.3)');
}
});
});
.pin {
width: 20px;
height: 20px;
background-color: #65C02F;
border-radius:20px;
-moz-border-radius: 20px;
-webkit-border-radius: 20px;
border: 2px solid #FFF;
margin: 10px;
box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 4px 6px 0 rgba(0, 0, 0, 0.3);
cursor: pointer;
z-index: 2;
transition: box-shadow 0.2s;
}
.pin:hover {
background-color: #50A71C;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="http://code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
<div class="pin"></div>
<div class="pin"></div>
<div class="pin"></div>
<div class="pin"></div>
【问题讨论】:
-
成功了,谢谢!
标签: jquery css jquery-ui draggable