onclick检索所有已删除元素的绝对位置的字符串

时间:2012-12-11 09:29:49

标签: jquery-ui jquery-ui-draggable

在搜索了一天并尝试了一些解决方案后,没有人能为我工作。

Draggables是<ul>中的列表项。 Droppable位于它旁边的div上。现在基本拖动,现在克隆没有助手。

Onclick我想:

  • 从可放置区域获取所有可拖动位置。 (相对于文件的绝对位置)

    • note :draggables位置中的每个<li>都有一个唯一的ID。 (draggables列表是从ajax回调构建的,因此在解析xml时添加了id:<li id="'+uid+'"> ...
    • 我希望以字符串格式检索所有位置,例如: var send_new_positions =“id1; x1,y2; id2; x2,y2”;示例:“1; 108,57”表示:li = id = 1,xPos = 108,yPos = 57。

问题:

我不能老式的方式onclick收集可拖动区域内的所有列表项,因为没有任何。在调试器中,我看到它们没有那样工作,droppable保持干净,draggables用内联样式更新,例如:<li style="position: relative; left: -270px; top: 127px;" class="ui-draggable dropped"> ...

我是否应该为可拖动的选择器构建一个选择器,找到每个<li>的类“ ui-draggable dropped ”,然后提取位置? 我认为这是最难的方式,毕竟我只能得到相对的位置。

我是否应该将我的逻辑添加到 drop :function()并将我的字符串格式添加到被删除的每个<li>。如果是这样,我应该如何将此字符串数据附加到每个删除的<li>

最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

循环所有可拖动元素并构造字符串:

$('#myButton').click(function(){
    var myStringPosition = null;
    $('.ui-draggable').each(function(){
        myStringPosition = $(this)[0].id + ';' + $(this).css('left') + ';' + $(this).css('top');
    });

    alert(myStringPosition);
});