这篇文章将为大家详细讲解有关js如何实现鼠标拖动功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
效果图:
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#div{
width: 200px;
height: 200px;
background: green;
position: absolute;
}
#div2{
width: 200px;
height: 200px;
background: gold;
position: absolute;
top: 200px;
left: 200px;
}
</style>
</head>
<body>
<div id="div">
</div>
<div id="div2"></div>
<script>
window.onload=function(){
var div=document.getElementById("div");
div.onmousedown=function(ev){
var e=window.event || ev;
//var Mydiv=document.getElementById("div");
//获取到鼠标点击的位置距离div左侧和顶部边框的距离;
var oX=e.clientX-div.offsetLeft;
var oY=e.clientY-div.offsetTop;
//当鼠标移动,把鼠标的偏移量付给div
document.onmousemove=function(ev){
//计算出鼠标在XY方向上移动的偏移量,把这个偏移量加给DIV的左边距和上边距,div就会跟着移动
var e=window.event|| ev;
div.style.left=e.clientX-oX+"px";
div.style.top=e.clientY-oY+"px";
}
//当鼠标按键抬起,清除移动事件
document.onmouseup=function(){
document.onmousemove=null;
document.onmouseup=null;
}
}
var div2=document.getElementById("div2");
div2.onmousedown=function(ev){
var e=window.event || ev;
//var Mydiv=document.getElementById("div");
//获取到鼠标点击的位置距离div左侧和顶部边框的距离;
var oX=e.clientX-div2.offsetLeft;
var oY=e.clientY-div2.offsetTop;
//当鼠标移动,把鼠标的偏移量付给div
document.onmousemove=function(ev){
//计算出鼠标在XY方向上移动的偏移量,把这个偏移量加给DIV的左边距和上边距,div就会跟着移动
var e=window.event|| ev;
div2.style.left=e.clientX-oX+"px";
div2.style.top=e.clientY-oY+"px";
}
//当鼠标按键抬起,清除移动事件
document.onmouseup=function(){
document.onmousemove=null;
document.onmouseup=null;
}
}
}
</script>
</body>
</html>
关于“js如何实现鼠标拖动功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。