2014-09-19 105 views
4

在這裏,我的小提琴的jQuery的拖放,克隆功能。jQuery的拖放,克隆,找到元素的下降位置

問題:

我的問題是:當過我滴元素,它顯示:

position: {top: 0, left: 0} 

只爲可拖動,複製和投擲的元素。

我也寫了代碼找到位置只使用draggable功能,這是工作正常。我想這種行爲在draggable, droppable with clone feature

請訪問的jsfiddle

fiddle

full-screen output

回答

5

最後,解決了這個問題。問題是,我使用ui.draggable.position();將丟失的位置存儲到數據庫,這是錯誤的。

我們需要存儲的實際位置是:

// position of the draggable minus position of the droppable 
// relative to the document 
leftPosition = ui.offset.left - $(this).offset().left; 
topPosition = ui.offset.top - $(this).offset().top; 

參考:How do I get the coordinate position after using jQuery drag and drop?

更新的jsfiddle與工作示例

http://jsfiddle.net/przbadu/rkvdffe3/18/

http://jsfiddle.net/przbadu/rkvdffe3/18/embedded/result/

+0

老張貼在這裏,但我以爲我會問nyways。我注意到,當你將一個元素拖放到頁面上時,它會加載2個座標。所以在你再次移動它之後,它會加載更精確的座標。你有更多的更新代碼嗎?這與我期望完成的非常相似,但與簽名無關。謝謝! – Justin 2017-12-13 06:02:44

+0

@Justin是的,它太舊了。不幸的是,我沒有更新的代碼。 – przbadu 2017-12-13 07:03:30

+0

你在任何地方使用它?或者知道另一種類似於此的解決方案? – Justin 2017-12-13 07:18:09