我有一個類與表:.screens
,它的單元格是可放下的。我可以從單元格的列表中拖動任何項目。我還試圖計算用戶放棄物品的位置,以便它出現在正確的位置。但是有一個問題,如果用戶試圖刪除除第一個單元格以外的任何單元格中的項目,則放置位置得到錯誤計算。這裏是我的這種計算代碼:Droppable元素位置得到錯誤計算
var pos = ui.draggable.offset(), dPos = $(this).offset();
var droppedTop = ui.position.top - $(this).offset().top + $('#mainContainer').scrollTop();
var droppedLeft = ui.position.left - $(this).offset().left + $('#mainContainer').scrollLeft();
那麼我指定這些頂部和左側位置滴下的項目。如果沒有表格,但是隻有div,此代碼可以很好地工作。這裏是小提琴:https://jsfiddle.net/vaxobasilidze/moafzcx8/2/將項目拖放到表中以查看問題。任何想法如何解決這一問題?
你沒有'#mainContainer'。 –
@AndyG我已經修復了在小提琴中,但它不起作用。 #mainContainer(現在#mainDiv)是此表的父項,可能會滾動。 –
將$('。screenContainer')。droppable(....)更改爲$('。screens')。droppable(....)。這將根據整個.screens容器設置頂部和左側位置,而不是單個.screenContainer元素。 –