當我設置可拖動對象捕捉到一個範圍(只做內部捕捉)時,我發現它經常返回相鄰的捕捉,儘管顯然是在它們之外。注意SnapMode,因爲它是最重要的部分:jQuery UI Snappable不能僅返回內部捕捉與捕捉模式設置
$(".draggable").draggable({
snap: ".snap",
snapMode: "inner",
stop: function(event, ui) {
/* Get the possible snap targets: */
var snapped = $(this).data('draggable').snapElements;
/* Pull out only the snap targets that are "snapping": */
var snappedTo = $.map(snapped, function(element) {
return element.snapping ? element.item : null;
});
/* Display the results: */
var result= '';
$.each(snappedTo, function(idx, item) {
result += $(item).text() + ", ";
});
$("#results").html("Snapped to: " + (result === '' ? "Nothing!" : result));
}
});
這原本是基於這樣一個問題:How to find out about the "snapped to" element for jQuery UI draggable elements on snap
我需要「snappable」區爲每設計我彼此相鄰「M試圖建立對,就像這樣:
我的jsfiddle證明這個問題是在這裏:http://jsfiddle.net/myingling/dx54dapr/1/
(嘗試捕捉到捕捉2,你會看到它說它捕捉到捕捉1和捕捉2!)
我認爲你需要把兩個卡領域 – codtex
之間的一些空間爲什麼,如果我使用'SNAPMODE:「內部」'?不應該只檢測丟棄區域內的物體? – Bing