Fre*_*eau 6 jquery jquery-ui jquery-ui-draggable
有没有一种方法可以确定某个jQuery UI draggable类是否已初始化?
我有一系列带有"draggable1"类的div.
由于超出了本问题范围的原因,我不想提前初始化类,而是我需要在第一次选择一个div时初始化类,这是我在click事件处理程序中执行的.然后,我假设每次选择另一个div时我都不想继续重新初始化类.所以,我需要确定是否已经点击了其中一个div,并且没有必要初始化draggable.
或者我不正确地看着这个?我是否应该在每次选择另一个div时重新初始化可拖动的类?
rd3*_*d3n 12
假设您正在使用jQuery UI 1.9+(如果没有,请指定您的版本),您可以检索可拖动的div数据以检查是否使用以下方式初始化draggable:
jQuery('.draggable1').data('ui-draggable');
Run Code Online (Sandbox Code Playgroud)
您的点击处理函数将如下所示:
$('.draggable1').click(function() {
var $div = $(this);
if(!$div.data('ui-draggable'))
$div.draggable();
});
Run Code Online (Sandbox Code Playgroud)
在此看到它的实际效果 jsFiddle
说明:jquery UI可拖动窗口小部件基于jQuery UI窗口小部件工厂,如文档的"实例"部分所述:
使用jQuery.data()以小部件的全名作为键来存储小部件的实例.
您还可以使用:data选择器来检查div元素是否已经绑定了一个可拖动的窗口小部件:
$div.is(':data(ui-draggable)');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7323 次 |
| 最近记录: |