$(function() {
$( "#d1o1" ).droppable({
accept: "#s1o2, #s1o1, #s1o3, #s1o4, #s1o5, #s1o6",
over: function (){
$( "#d1o1" ).droppable( "option", "d1o1Check", "1" );
},
out: function () {
$( "#d1o1" ).droppable( "option", "d1o1Check", "0" );
},
})
});
На данный момент droppable # d1o1 принимает все перетаскиваемые объекты, потому что я бы хотел, чтобы они оставались при удалении. Тем не менее, я хочу, чтобы функции "over" и "out" выполнялись при отбрасывании # s102. Как можно принимать все перетаскиваемые объекты, но только переходить и выходить, когда определенное перетаскивание удаляется?
Когда когда-либо перетаскиваемый переносится поверх droppable, вы можете проверить, подходит ли он для функции перегрузки и вывода как:
$(function() {
$( "#d101" ).droppable({
accept: "#s102, #s101, #s103, #s104, #s105, #s106",
over: function (event, ui){ // Don't forget to add these parameters for the function
if($(ui.helper).is('#s102')) // <-- Add this line
$( "#d101" ).droppable( "option", "d1o1Check", "1" );
},
out: function (event, ui) { // Don't forget to add these parameters for the function
if($(ui.helper).is('#s102')) // <-- Add this line
$( "#d101" ).droppable( "option", "d1o1Check", "0" );
},
});
$('.drag').draggable();
});
Здесь работает jsFiddle