자바스크립트 질문드립니다.

자바스크립트 질문드립니다.

QA

자바스크립트 질문드립니다.

본문


<script type='text/javascript'>
var img_L = 0;
var img_T = 0;
var targetObj;
function getLeft(o){
     return parseInt(o.style.left.replace('px', ''));
}
function getTop(o){
     return parseInt(o.style.top.replace('px', ''));
}
// 이미지 움직이기
function moveDrag(e){
     var e_obj = window.event? window.event : e;
     var dmvx = parseInt(e_obj.clientX + img_L);
     var dmvy = parseInt(e_obj.clientY + img_T);
     targetObj.style.left = dmvx +"px";
     targetObj.style.top = dmvy +"px";
     return false;
}
// 드래그 시작
function startDrag(e, obj){
     targetObj = obj;
     var e_obj = window.event? window.event : e;
     img_L = getLeft(obj) - e_obj.clientX;
     img_T = getTop(obj) - e_obj.clientY;
     document.onmousemove = moveDrag;
     document.onmouseup = stopDrag;
     if(e_obj.preventDefault)e_obj.preventDefault();
}
// 드래그 멈추기
function stopDrag(){
     document.onmousemove = null;
     document.onmouseup = null;
     startDrag(e,obj);
}
</script>
<div class='left' onmousedown='startDrag(event, this);'  style='width:30%; height:100%; float:left; background-color:#cccccc; margin-left:20px; opacity:0.2;position:absolute;left:0px;top:10px; z-index: 500;'>
    왼쪽
</div>

 

해당 자바스크립트를 적용하면 div를 마우스로 드래그가 가능하게 되었는데 이걸 처음 보이는 화면밖으로 못가게 할려면 어떻게 해야하나요?

이 질문에 댓글 쓰기 :

답변 1



var dmvx = parseInt(e_obj.clientX + img_L);
var dmvy = parseInt(e_obj.clientY + img_T);
// 창의 크기는 window.height, window.width 를 참조하시고
// 여기에서 dmvx, dmvy 값을 확인하셔서 조정해주세요
targetObj.style.left = dmvx +"px";
targetObj.style.top = dmvy +"px";

답변을 작성하시기 전에 로그인 해주세요.
전체 934
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT