网络编程 
首页 > 网络编程 > 浏览文章

js实现简单图片拖拽效果

(编辑:jimmy 日期: 2024/11/7 浏览:3 次 )

本文实例为大家分享了js实现简单图片拖拽效果的具体代码,供大家参考,具体内容如下

//图片需要自己导入
<!doctype html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>在当前显示区范围内实现点不到的小方块</title>
 <style>
 div{position:fixed;width:100px;height:100px;
  background-image:url(images/xiaoxin.gif);
   background-size:100%;
 }
 </style>
 
 </head>
 <body>
 <div id="pop"></div>
 <script>
 let pop = document.getElementById("pop")
 //定义开关变量,用于控制图片是否跟随鼠标移动
 let canMove = false;
 //在开始拖拽时,就保存鼠标距div左上角的相对位置
 let offsetX,offsetY;
 //当在pop上按下鼠标时
 pop.onmousedown=function(e){
  //可以开始拖动
  canMove=true;
  offsetX=e.offsetX;
  offsetY=e.offsetY;
 }
 //当鼠标在窗口移动时
 window.onmousemove=function(e){
  //只有当pop可以移动时
  if(canMove==true){
  //让pop跟随鼠标移动
  //开始拖拽时,立刻获得鼠标距图片左上角的相对位置
  //求pop的top和left
  let left=e.clientX-offsetX;
  let top=e.clientY-offsetY;
  //设置pop的top和left属性
   pop.style.left=left+"px";
   pop.style.top=top+"px";
  }
 }
 //当在pop上抬起鼠标按键时
 pop.onmouseup=function(){
  //停止拖拽
  canMove=false
 } 
 </script>
 </body>
</html>

效果图:

js实现简单图片拖拽效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:k8s node节点重新加入master集群的实现
下一篇:用vite搭建vue3应用的实现方法
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。