2012-01-19 4 views
9

나는 HTML5를위한 드래그 앤 드롭 예제/튜토리얼을 찾고 있었지만, 지금까지는 드래그되는 동안 사라지고 어떤 축으로도 제한되지 않고 사라지는 오브젝트를 포함하고 있습니다. 그것의 유령에 반하여 실제 객체 자체를 드래그 할 수 있는지 그리고 X 또는 Y 축으로 제한 할 수 있는지 궁금합니다.HTML5 : X 축에서 페이드없이 드래그/드롭?

감사합니다.

답변

17

네, 쉽게 직접 작성하십시오.

elem.onmousedown = function(e) { 
    e = e || window.event; 
    var start = 0, diff = 0; 
    if(e.pageX) start = e.pageX; 
    else if(e.clientX) start = e.clientX; 

    elem.style.position = 'relative'; 
    document.body.onmousemove = function(e) { 
     e = e || window.event; 
     var end = 0; 
     if(e.pageX) end = e.pageX; 
     else if(e.clientX) end = e.clientX; 

     diff = end-start; 
     elem.style.left = diff+"px"; 
    }; 
    document.body.onmouseup = function() { 
     // do something with the action here 
     // elem has been moved by diff pixels in the X axis 
     elem.style.position = 'static'; 
     document.body.onmousemove = document.body.onmouseup = null; 
    }; 
} 
+0

와우! 고마워요! – Sam

+0

'evt'가'e'가되어야하나요? 'evt.pageX'와'evt.clientX'에서와 같이. – bloodyKnuckles

+2

예 : https://jsfiddle.net/BloodyKnuckles/jubdc68s/ – bloodyKnuckles

관련 문제