摘要:實現(xiàn)元素拖拽被移動元素必須為絕對定位待拖拽元素是否激活拖拽狀態(tài)鼠標按下時相對于選中元素的位移監(jiān)聽鼠標按下事件激活拖拽狀態(tài)鼠標按下時和選中元素的坐標偏移坐標鼠標按下時和選中元素的坐標偏移坐標監(jiān)聽鼠標放開事件監(jiān)聽鼠標移動事件
js實現(xiàn)元素拖拽
被移動元素必須為絕對定位
position:absolute;Dom
Javasrtipt
var moveElem = document.querySelector(".move"); //待拖拽元素 var dragging; //是否激活拖拽狀態(tài) var tLeft, tTop; //鼠標按下時相對于選中元素的位移 //監(jiān)聽鼠標按下事件 document.addEventListener("mousedown", function(e) { if (e.target == moveElem) { dragging = true; //激活拖拽狀態(tài) var moveElemRect = moveElem.getBoundingClientRect(); tLeft = e.clientX - moveElemRect.left; //鼠標按下時和選中元素的坐標偏移:x坐標 tTop = e.clientY - moveElemRect.top; //鼠標按下時和選中元素的坐標偏移:y坐標 } }); //監(jiān)聽鼠標放開事件 document.addEventListener("mouseup", function(e) { dragging = false; }); //監(jiān)聽鼠標移動事件 document.addEventListener("mousemove", function(e) { if (dragging) { var moveX = e.clientX - tLeft, moveY = e.clientY - tTop; moveElem.style.left = moveX + "px"; moveElem.style.top = moveY + "px"; } });
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/82018.html
摘要:原生實現(xiàn)對元素的拖拽一背景介紹此處為鋪墊內(nèi)容,可跳過隨著前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。 原生 JS 實現(xiàn)對 html 元素的拖拽 一、背景介紹 【此處為鋪墊內(nèi)容,可跳過】 隨著 Web 前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識、新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。而隨著...
摘要:原生實現(xiàn)對元素的拖拽一背景介紹此處為鋪墊內(nèi)容,可跳過隨著前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。 原生 JS 實現(xiàn)對 html 元素的拖拽 一、背景介紹 【此處為鋪墊內(nèi)容,可跳過】 隨著 Web 前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識、新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。而隨著...
摘要:涉及部分的,不會對理解全局產(chǎn)生干擾。在上監(jiān)聽事件,當為畫布時,通過創(chuàng)建一個藍色虛線框移動的時候,更新的位置在上監(jiān)聽事件,落在畫布時,創(chuàng)建一個的節(jié)點從而完成整個拖拽添加元素的功能。 showImg(https://segmentfault.com/img/remote/1460000019564977);showImg(https://segmentfault.com/img/remot...
摘要:涉及部分的,不會對理解全局產(chǎn)生干擾。在上監(jiān)聽事件,當為畫布時,通過創(chuàng)建一個藍色虛線框移動的時候,更新的位置在上監(jiān)聽事件,落在畫布時,創(chuàng)建一個的節(jié)點從而完成整個拖拽添加元素的功能。 showImg(https://segmentfault.com/img/remote/1460000019564977);showImg(https://segmentfault.com/img/remot...
閱讀 3081·2021-11-24 11:14
閱讀 3525·2021-11-22 15:22
閱讀 3215·2021-09-27 13:36
閱讀 725·2021-08-31 14:29
閱讀 1335·2019-08-30 15:55
閱讀 1768·2019-08-29 17:29
閱讀 1153·2019-08-29 16:24
閱讀 2417·2019-08-26 13:48