成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

js實現(xiàn)元素拖拽

lufficc / 2753人閱讀

摘要:實現(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

相關(guān)文章

  • JS進階篇4---原生JS實現(xiàn)元素拖拽

    摘要:原生實現(xiàn)對元素的拖拽一背景介紹此處為鋪墊內(nèi)容,可跳過隨著前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。 原生 JS 實現(xiàn)對 html 元素的拖拽 一、背景介紹 【此處為鋪墊內(nèi)容,可跳過】 隨著 Web 前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識、新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。而隨著...

    evin2016 評論0 收藏0
  • JS進階篇4---原生JS實現(xiàn)元素拖拽

    摘要:原生實現(xiàn)對元素的拖拽一背景介紹此處為鋪墊內(nèi)容,可跳過隨著前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。 原生 JS 實現(xiàn)對 html 元素的拖拽 一、背景介紹 【此處為鋪墊內(nèi)容,可跳過】 隨著 Web 前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識、新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗。而隨著...

    phoenixsky 評論0 收藏0
  • 從GGEditor的一個案例看JS原生拖拽功能

    摘要:涉及部分的,不會對理解全局產(chǎn)生干擾。在上監(jiān)聽事件,當為畫布時,通過創(chuàng)建一個藍色虛線框移動的時候,更新的位置在上監(jiān)聽事件,落在畫布時,創(chuàng)建一個的節(jié)點從而完成整個拖拽添加元素的功能。 showImg(https://segmentfault.com/img/remote/1460000019564977);showImg(https://segmentfault.com/img/remot...

    PingCAP 評論0 收藏0
  • 從GGEditor的一個案例看JS原生拖拽功能

    摘要:涉及部分的,不會對理解全局產(chǎn)生干擾。在上監(jiān)聽事件,當為畫布時,通過創(chuàng)建一個藍色虛線框移動的時候,更新的位置在上監(jiān)聽事件,落在畫布時,創(chuàng)建一個的節(jié)點從而完成整個拖拽添加元素的功能。 showImg(https://segmentfault.com/img/remote/1460000019564977);showImg(https://segmentfault.com/img/remot...

    taowen 評論0 收藏0

發(fā)表評論

0條評論

lufficc

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<