>  기사  >  웹 프론트엔드  >  js에서 드래그 앤 드롭 이벤트를 구현하는 방법의 예

js에서 드래그 앤 드롭 이벤트를 구현하는 방법의 예

小云云
小云云원래의
2018-03-20 17:09:471510검색


이 기사는 주로 js에서 드래그 앤 드롭 이벤트를 구현하는 방법의 예를 공유합니다.

HTML

<body> 
     <p></p></body>

CSS

p{        position: absolute;        width: 200px;        height: 200px;        background: #369
    }

JS

window.onload = function(){
    var op = document.getElementsByTagName("p")[0];

    /*鼠标点击的位置距离p左边的距离 */
    var disX = 0;
    /*鼠标点击的位置距离p顶部的距离*/
    var disY = 0;
    op.onmousedown = function(){
        var e = e || window.event;
        disX = e.clientX - op.offsetLeft;
        disY = e.clientY- op.offsetTop;

        document.onmousemove = function(e){
            var e = e || window.event;
            // 横轴坐标
            var leftX = e.clientX - disX;
            // 纵轴坐标
            var topY =e.clientY - disY;

            if( leftX < 0 ){
                leftX = 0;
            }            /* 获取浏览器视口大小 document.document.documentElement.clientWidth*/
            else if(  leftX > document.documentElement.clientWidth - op.offsetWidth ){
                leftX = document.document.documentElement.clientWidth - op.offsetWidth;
            }

            if( topY < 0 ){
                topY = 0;
            }
            else if( topY > document.documentElement.clientHeight -op.offsetHeight ){
                topY = document.documentElement.clientHeight - op.offsetHeight;
            }
            op.style.left = leftX + "px";
            op.style.top = topY+"px";
        }
        document.onmouseup = function(){
            document.onmousemove = null;
            document.onmouseup = null;
        }
    }
 }

관련 추천:

html 드래그 드래그 이벤트

JavaScript 마우스 드래그 이벤트 구현 사례

드래그 이벤트 d ragstart에 대한 HTML5 설명, 드래그 그리고 드래그엔드

위 내용은 js에서 드래그 앤 드롭 이벤트를 구현하는 방법의 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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