javascript 드래그 호 환 div 의 위치 구현 예시

1 실현 원리
dom 요 소 를 이용 한 dragstar/ndragover/ndrop 이벤트 가 완료 되 었 습 니 다.드래그 를 시작 할 때 드래그 요 소 를 가 져 온 다음 드래그 를 허용 합 니 다.마지막 으로 마 우 스 를 들 어 새로운 위치 에 놓 습 니 다.이벤트.prevent Default()방법 을 사 용 했 습 니 다.많은 분 들 이 궁금 해 하 실 수 있 습 니 다.간단하게 소개 하 겠 습 니 다.
이벤트.preventDefault():이 방법 은 브 라 우 저가 이벤트 와 연 결 된 기본 동작 을 실행 하지 않도록 하 는 것 입 니 다
dragover 이벤트 에서 사용 합 니 다.dragover 와 관련 된 기본 동작 은 데이터 나 요 소 를 다른 요소 에 배치 하 는 것 을 막 기 때 문 입 니 다.따라서 이벤트.prevent Default()를 통 해 이 기본 이 벤트 를 금지 해 야 합 니 다.요 소 를 새로운 위치 로 끌 수 있 습 니 다.

<!-- div         gis       -->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <style type="text/css">
        body{
            display: flex;
            padding: 100px;
            flex-direction: column;
        }
        div{
            width: 100px;
            height: 100px;
            text-align: center;
        }
    </style>
 
</head>
<body>
   <div style="background-color: red;width:200px;height:200px;" draggable="true">  </div>
    <div style="background-color: green;width:100px" draggable="true">  </div>
    <div style="background-color: blue;" draggable="true">  </div>
</body>
<script type="text/javascript">
    let div =document.getElementsByTagName("div");
    let container=null;
    //       div   dragstart dragover  drop  
    for(let i=0;i<div.length;i++){
        div[i].ondragstart=function(){  
            container=this
        }
        div[i].ondragover=function(){
            event.preventDefault();
        }
        div[i].ondrop=function(){
            debugger;
            if(container!=null&&container!=this){
                //             
                let temp=document.createElement("div");
                document.body.replaceChild(temp,this);   //    div      
                document.body.replaceChild(this,container);//   div       
                document.body.replaceChild(container,temp)  //   div       
                debugger; 
                console.log('      ')
            }
        }
    }
</script>
</html>

자 바스 크 립 트 드래그 호 환 div 의 위치 구현 예시 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.자 바스 크 립 트 드래그 호 환 div 내용 에 대해 서 는 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부탁드립니다!

좋은 웹페이지 즐겨찾기