31

我有一堆带有 jQ​​uery 的元素。有些是可拖动的,有些是可放置的,有些两者都是。如何检测元素是可拖动的还是可放置的?

4

4 回答 4

27

你也可以data()像这样使用jQuery..

if ($(elem).data('draggable')) {
        alert("yes");
}
else {
        alert("no");
}

if ($(elem).data('fooable')) {
        alert("yes");
}
else {
        alert("no");
} 

在这里看到它:http: //bootply.com/60153

于 2011-11-21T19:24:13.697 回答
15

这适用于我的 JQuery 1.10.2

if ($("el").data('uiDraggable')){ //or uiDroppable
   alert("draggable")
} else {
   alert("not draggable")
}

或者,可以在没有参数的情况下调用 .data() 方法

$("el").data()

那应该打印类似

对象 { uiDraggable : $.(匿名函数).(匿名函数)}

您可以在其中查看对象属性。

于 2013-04-07T20:03:08.610 回答
7

对于可拖动元素:

$(elem).is('.ui-draggable')

或者你可以filter,或者只是选择$('.ui-draggable');

对于 droppable,您将使用.ui-droppable, resizable is .ui-resizable, selectable.ui-selectable用于容器,尽管您选择的项目是.ui-selectee, sortable.ui-sortable用于容器。

于 2011-11-21T18:57:16.100 回答
0

我使用 Modernizr:

if (Modernizr.draganddrop) {
// use drag and drop
}
于 2016-12-04T15:53:57.703 回答