1. 程式人生 > >js原生程式碼實現滑鼠拖拽(超簡單)

js原生程式碼實現滑鼠拖拽(超簡單)

首先先來看這一張圖

在這種圖中,盒子的大小為512px,並且margin-left:-250px margin-top:140px;並通過一些樣式讓其在中部顯示

這些樣式都不是重要的,這裡加個margin是為了讓其出現拖拽的時候出現滑鼠偏移,好做演示而已,不然margin:0 auto 就可以實現盒子的居中

首先通過offsetLeft的方法獲取到盒子的偏移值,然後在通過clientX,clientY獲取到滑鼠的座標,通過當前座標減去offsetLeft的座標就可以獲取滑鼠在div裡面的

具體數值,也就是滑鼠應該在的地方

這個時候拖拽的時候回出現滑鼠偏移的現象,沒錯,這是margin值搞的鬼,margin也是盒子的一部分,所有要獲取到滑鼠在盒子裡面的位置的話,加上的margin要減掉

減掉的margin要加上,這個是我根據思路得到的程式碼,可以參考一下,大神請忽悠