如何在拖动事件jqueryui / jquery中单击div / ui.helper?

时间:2011-04-30 02:52:53

标签: javascript jquery jquery-ui jquery-ui-draggable

在Jquery UI的网站上:

http://jqueryui.com/demos/draggable/

如果我有:

<div id="someId" class="someClass">he</div>
<div id="otherId" class="otherClass">he2</div>

$('#someid','#otherid').draggable({
    drag: function(event, ui) {
      alert(ui.helper.THEIDOFTHECLICKEDITEM); // What goes here?
    }
});

如何使用回调中的“ui”变量获取ID的ID或类?如果不可能,我如何从“event”变量中获取它?

1 个答案:

答案 0 :(得分:7)

你想:

$("#someId, #otherId").draggable({
    drag: function(event, ui) {
        console.log(ui.helper[0].id);
    }
});

(或使用ui.helper.attr("id")

注意ui.helper是一个jQuery对象,这就是为什么我们必须使用.attr("...")来检索id或访问索引0处的匹配元素并直接获得身份。


或者不使用ui参数(可能是我推荐的):

$("#someId, #otherId").draggable({
    drag: function(event, ui) {
        console.log(this.id); // "this" is the DOM element being dragged.
    }
});

以下是一个有效的例子:http://jsfiddle.net/andrewwhitaker/LkcSx/