jQuery - 检测是否正在拖动元素

时间:2013-08-22 16:18:30

标签: javascript jquery jquery-ui

我希望在被拖动时得到一个元素的位置。

到目前为止我的代码:

$(document).ready(function(){


    $("p").text($("div").position().left);
    $("p").text($("div").position().top);

    $("div").draggable();

})

这只会在页面加载时获取位置。我想检测div何时被拖动,所以我可以在p标签中写出它的位置。

2 个答案:

答案 0 :(得分:8)

$('#dragThis').draggable(
    {
        drag: function(){
            var offset = $(this).offset();
            var xPos = offset.left;
            var yPos = offset.top;
            $('#posX').text('x: ' + xPos);
            $('#posY').text('y: ' + yPos);
        }
    });

<强> JSFIDDLE

答案 1 :(得分:1)

您应该查看jQuery官方文档的events部分: http://jqueryui.com/draggable/#events

drag事件将在被拖动时被提升,并且从那里可以获得偏移量。例如:

$(this).offset().left;
$(this).offset().top;