今天小编给大家分享一下怎么使用JavaScript实现拖拽效果的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
拖拽在前端开发中是很常见的功能,也是基本功之一,本文是不限制范围的拖拽也就是最简单的拖拽,鼠标按下对象,拖拽,松开停止!
1,onmousedown事件
2,onmousemove事件
3,onmouseup事件
因为在按下时拖动,所以onmousemove事件在down后才注册,up事件是用来解绑事件,消除事件!
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>简单拖拽</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
#div1 {
width: 100px;
height: 100px;
background: orange;
position: absolute;
}
</style>
</head>
<body >
<div id="div1"></div>
<script type="text/javascript">
function getStyle(obj, attr) {
if (obj.currentStyle) {
return obj.currentStyle[attr];
} else {
return getComputedStyle(obj, null)[attr];
}
}
var oDiv = document.getElementById('div1');
oDiv.onmousedown = function(ev) {
var oEvent = ev || event;
// var disX = oEvent.clientX - oDiv.offsetLeft;
// var disY = oEvent.clientY - oDiv.offsetTop;
var disX = oEvent.clientX - parseInt(getStyle(oDiv, 'left'));
var disY = oEvent.clientY - parseInt(getStyle(oDiv, 'top'));
document.onmousemove = function(ev) {
var oEvent = ev || event;
oDiv.style.left = oEvent.clientX - disX + 'px';
oDiv.style.top = oEvent.clientY - disY + 'px';
};
document.onmouseup = function() {
document.onmousemove = null;
document.onmouseup = null;
};
return false;
};
</script>
</body>
</html>
以上就是“怎么使用JavaScript实现拖拽效果”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注天达云行业资讯频道。