Rumah > hujung hadapan web > tutorial js > js实现带框的拖拽效果

js实现带框的拖拽效果

小云云
Lepaskan: 2018-03-26 16:55:31
asal
1399 orang telah melayarinya

本文主要和大家分享js实现带框的拖拽效果,主要以代码的形式和大家分享,希望能帮助到大家。

<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>Document</title>
  <style>
  #box {
  width:100px;
  height:100px;
  background:#ff0099;
  position:absolute;
  
  }
  .box1 {
  border:1px solid #000000;
  position:absolute;
  
  }
  </style>
 </head>
 <body>
 <p id = &#39;box&#39;></p>
 <script>
 var box = document.getElementById(&#39;box&#39;);
     box.onmousedown = function(e){
  var box1 = document.createElement("p");
    document.body.appendChild(box1);
    box1.style.width = box.offsetWidth + &#39;px&#39;;
    box1.style.height = box.offsetHeight + &#39;px&#39;;
 box1.style.left = box.offsetLeft + &#39;px&#39;;
 box1.style.top = box.offsetTop + &#39;px&#39;;
    box1.className = &#39;box1&#39;;
    e = e || event;
 //计算鼠标在盒子中的位置;
 var x = e.pageX - box.offsetLeft;
 var y = e.pageY - box.offsetTop;
 document.onmousemove = function(e){


  e = e || event;
  //计算盒子在页面上的坐标;
  var xx = e.pageX - x;
  var yy = e.pageY - y;
  box1.style.left = xx + &#39;px&#39;;
  box1.style.top = yy + &#39;px&#39;;
 document.onmouseup = function(){
 box.style.left = box1.offsetLeft + &#39;px&#39;;
 box.style.top = box1.offsetTop + &#39;px&#39;;
 document.body.removeChild(box1);
 document.onmousemove = &#39;null&#39;;
 
 
 
 }
 
 return false;
 }
 
 
 }
 
 
 </script>
 </body>
</html>
Salin selepas log masuk

Atas ialah kandungan terperinci js实现带框的拖拽效果. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan