溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JavaScript鼠標拖拽事件詳解

發(fā)布時間:2020-09-02 19:56:26 來源:腳本之家 閱讀:158 作者:weixin_棉花糖 欄目:web開發(fā)

本文實例為大家分享了js鼠標拖拽事件的詳細實現(xiàn)代碼,供大家參考,具體內(nèi)容如下

圖片如下:

JavaScript鼠標拖拽事件詳解

css代碼

<style>
 *{
 margin:0;
 padding:0;
 }
 #box{
 width: 200px;
 height: 200px;
 background: url("./img/aio.png") no-repeat;
 background-size: cover;
 position: absolute;/*定位元素 父級元素window就是初始包含塊*/
 top:0;
 left:0;
 }
</style>

html代碼

<div id="box"></div>

js代碼

<script>
 //獲取標簽
 var box=document.getElementById("box");
 var body=document.body;
 var x,y;//全局作用域
 //鼠標按下事件 0級
 box.onmousedown=function(e) {//傳入形參e
 var mx=e.clientX;//鼠標距離瀏覽器左
 var my=e.clientY;//鼠標距離瀏覽器上
 var bx=box.offsetLeft;//盒子距離瀏覽器左
 var by=box.offsetTop;//盒子距離瀏覽器上
 x=mx-bx;//實際盒子距離的瀏覽器左
 y=my-by;//實際盒子距離的瀏覽器上
 //鼠標移動事件 0級
 body.onmousemove=function(e) {//拿到全局x、y、
  //獲取當前鼠標移動到的坐標點
  var mx=e.clientX;
  var my=e.clientY;
  //盒子距離瀏覽器
  box.style.left=mx-x +"px";
  box.style.top=my-y +"px";

 };
 //鼠標彈起事件(松開)
 box.onmouseup=function(e) {
  body.onmousemove=null;//不做任何操作//dom0級事件解除事件綁定
  //獲取當前鼠標移動到的坐標點
  var mx=e.clientX;
  var my=e.clientY;
  //盒子距離瀏覽器
  box.style.left=mx-x +"px";
  box.style.top=my-y +"px";
 }
 };
</script>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI