原生js拖拽(第一课 未兼容)拖拽思路_javascript技巧
程序员文章站
2022-04-20 09:57:30
...
复制代码 代码如下:
/*
拖拽流程:
1、第一步点击需要拖动的元素
2、在点击下的元素被选中,进行move移动
3、当鼠标弹起的时候,停止动作
4、点击元素oDIV的时候,可用的是oDIV区域,而move和up则是全局区域,也就是整个文档通用,即应该用document
*/
oDIV = document.getElementById("gaga");
oDIV.onmousedown = function( e ){ // 当鼠标点击下去的时候
var diffX = e.clientX - oDIV.offsetLeft; // 点击的位置距离浏览器最左边的位置(clientX) 再减去被点击元素距离最左边的位置(oDIV.offetLeft) 在引动的所点击的元素距离最左边的位置是不确定的 所以需要这个结果
var diffY = e.clientY - oDIV.offsetTop; // 点击的位置距离浏览器顶部的位置(clientY) 再减去被点击元素距离顶部的位置(oDIV.offsetTop) 在引动的所点击的元素距离顶部的位置是不确定的 所以需要这个结果
document.onmousemove = function( e ){ // 当按下鼠标不放的时候
var e = e || window.event;
oDIV.style.top = e.clientY - diffY + "px";
oDIV.style.left = e.clientX - diffX + "px";
};
document.onmouseup = function(){ // 当鼠标弹起的时候
document.onmousemove = null; // 清空鼠标按下鼠标不放的事件
document.onmouseup = null; // 清空鼠标弹起事件
}
};
推荐阅读
-
js拖拽一些常见的思路方法整理_javascript技巧
-
js拖拽一些常见的思路方法整理_javascript技巧
-
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome_javascript技巧
-
简单漂亮的js弹窗可*拖拽且兼容大部分浏览器_javascript技巧
-
原生js拖拽(第一课 未兼容)拖拽思路_javascript技巧
-
简单漂亮的js弹窗可*拖拽且兼容大部分浏览器_javascript技巧
-
原生js拖拽(第一课 未兼容)拖拽思路_javascript技巧
-
原生JS实现拖拽图片效果_javascript技巧
-
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome_javascript技巧
-
再次谈论React.js实现原生js拖拽效果引起的一系列问题_javascript技巧