JS實現鼠標按下拖拽效果
更新時間:2020年07月23日 15:08:59 作者:York_Ice
這篇文章主要為大家詳細介紹了JS實現鼠標按下拖拽效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
原生JS實現鼠標按下拖拽效果,供大家參考,具體內容如下
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>鼠標拖動</title> <style type="text/css"> body { margin: 0; } div { width: 200px; height: 200px; position: absolute; background-color: pink; } </style> </head> <body> <div onmousedown="downDiv(this)" onmousemove="moveDiv(this)" onmouseup="upDiv(this)"> </div> <script> //定義變量儲存div的寬高 var obj_w, obj_h; //定義一個變量判斷是否執(zhí)行移動函數 var mouseDown = false; //鼠標按下函數 function downDiv(obj) { //獲取div的寬高 obj_w = obj.offsetWidth; obj_h = obj.offsetHeight; //鼠標 var e = event || window.event; //e.clientX/Y 是獲取鼠標相對瀏覽器的位置;將div中心自動居中到鼠標 obj.style.left = (e.clientX - obj_w / 2) + "px"; obj.style.top = (e.clientY - obj_h / 2) + "px"; console.log(obj.style.left, obj.style.top) //按下時為ture,松開時為false,以判斷是否執(zhí)行執(zhí)行mouveDiv mouseDown = true; } //鼠標移動函數 function moveDiv(obj) { obj_w = obj.offsetWidth; obj_h = obj.offsetHeight; var e = event || window.event; console.log(e.clientX, e.clientY); console.log(obj_w, obj_h); if (mouseDown) { obj.style.left = (e.clientX - obj_w / 2) + "px"; obj.style.top = (e.clientY - obj_h / 2) + "px"; console.log(obj.style.left, obj.style.top) } } //鼠標松開函數 function upDiv(obj) { mouseDown = false; } </script> </body> </html>
更多精彩文章請點擊專題: Javascript拖拽特效匯總
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
JavaScript代碼判斷輸入的字符串是否含有特殊字符和表情代碼實例
這篇文章主要介紹了JavaScript代碼判斷輸入的字符串是否含有特殊字符和表情,通過js代碼if語句進行判斷,并結合自己開發(fā)的情景,具體操作步驟大家可查看下文的詳細講解,感興趣的小伙伴們可以參考一下。2017-08-08bootstrapValidator bootstrap-select驗證不可用的解決辦法
這篇文章主要為大家詳細介紹了bootStrapValidator和bootStrap-select驗證不可用的解決辦法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01javascript設計模式 – 原型模式原理與應用實例分析
這篇文章主要介紹了javascript設計模式 – 原型模式,結合實例形式分析了javascript原型模式相關概念、原理、應用場景及操作注意事項,需要的朋友可以參考下2020-04-04