>  기사  >  웹 프론트엔드  >  이미지 드래그 효과를 구현하는 JavaScript 코드 표시

이미지 드래그 효과를 구현하는 JavaScript 코드 표시

巴扎黑
巴扎黑원래의
2017-09-09 10:04:461475검색

이 글은 이미지 끌기 효과를 구체적으로 구현하기 위해 주로 JavaScript를 소개합니다. 관심 있는 친구들이 참고할 수 있습니다.

이 글의 예는 모든 사람이 이미지 끌기 효과를 구현하기 위한 특정 js 코드를 공유합니다. 참고로 구체적인 내용은 다음과 같습니다


<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <style>
  #pbox{
   width: 100%;
   height:100%;
  }
  #box{
   width: 200px;
   height: 200px;
   background:red;
   position: absolute;
  }
 </style>
</head>
<body>
<input type="button" id="btn" value="随机生成">
<p id="pbox">
<p id="box">

</p>
</p>
</body>
<script>
 var btn=document.getElementById("btn");//获取按钮
 var box=document.getElementById("box");//获取box
 var pbox=document.getElementById("pbox");//获取pbox
 var arr=[&#39;#fff143&#39;,&#39;#ff7500&#39;,&#39;#a3d900&#39;,&#39;#eedeb0&#39;,&#39;#ae7000&#39;,&#39;#b35c44&#39;,&#39;#392f41&#39;,&#39;#ff461f&#39;,&#39;#44cef6&#39;,&#39;#edd1db&#39;,&#39;#003371&#39;];//随机颜色
 //给btn注册点击事件ain
 btn.onclick=function(){
   pbox.innerHTML="";//清空pbo
  for(var i=0;i<=10;i++){
   var newTip =box.cloneNode(true);
   pbox.appendChild(newTip);
   var left=parseInt(Math.random()*(900-100+1) + 100);//随机生成左边距
   var top=parseInt(Math.random()*(500-100+1) + 100);//随机生成上边距
   var bg=Math.floor((Math.random()*arr.length));//生成数组随机数获得随机数组下标
   box.style.background=arr[bg];//设置颜色
   box.style.top=top+"px";//设置上边距
   box.style.left=left+"px";//设置左边距

  }
  var c=pbox.children;

  for(var i=0;i< c.length;i++){
   c[i].onmousedown=function (e) {
//     alert(this.offsetLeft);
    var spacex=e.pageX-this.offsetLeft;
    var spacey=e.pageY-this.offsetTop;
    this.onmousemove=function (e) {
     this.style.left=e.pageX-spacex+"px";
     this.style.top=e.pageY-spacey+"px";
    }
   };
   c[i].onmouseup=function () {
    this.onmousemove=null;
   }
  }
 }
</script>
</html>

위 내용은 이미지 드래그 효과를 구현하는 JavaScript 코드 표시의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.