메뉴 건너뛰기

프로그램언어

2014.03.26 02:26

Drag/Drop HTML elements

조회 수 19537 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<head>
<title>Drag/Drop HTML elements</title>

<script type="text/javascript">
sldValue=0
sldTop=0
sldLeft=0
doDrag=false
sldMouseLeft=0
sldMouseTop=0

function getAbsLeft(o) {
oLeft = o.offsetLeft
while(o.offsetParent!=null) {
oParent = o.offsetParent
oLeft += oParent.offsetLeft
o = oParent
}
return oLeft
}

function getAbsTop(o) {
oTop = o.offsetTop
while(o.offsetParent!=null) {
oParent = o.offsetParent
oTop += oParent.offsetTop
o = oParent
}
return oTop
}

function setLeft(o,oLeft) {
o.style.left = oLeft + "px"
}

function setTop(o,oTop) {
o.style.top = oTop + "px"
}

function setPosition(o,oLeft,oTop) {
setLeft(o,oLeft)
setTop(o,oTop)
}

function sldMouseDown(e)
{
if (!e) {e = window.event}
doDrag=true
o=document.getElementById("sldHead")
sldLeft=getAbsLeft(o)
sldTop=getAbsTop(o)
sldMouseLeft=e.clientX-sldLeft
sldMouseTop=e.clientY-sldTop

document.getElementById("mouseCapt").innerHTML = "Mouse Position on Mouse Down event : " + e.clientX + "/" + e.clientY
document.getElementById("headPos").innerHTML = "Head Position on Mouse Down event : " + sldLeft + "/" + sldTop
document.getElementById("mousePosRel").innerHTML = "Relative Mouse Position on Mouse Down event : " + sldMouseLeft + "/" + sldMouseTop

}

function sldMouseUp(e)
{
doDrag=false
}

function sldMouseMove(e)
{
if (!e) {e = window.event}

if (document.getElementById("mousePos"))
{
document.getElementById("mousePos").innerHTML = "Mouse Position : " + e.clientX + "/" + e.clientY
document.getElementById("dragStatus").innerHTML = "doDrag : " + doDrag
}

if (doDrag)
{
o=document.getElementById("sldHead")
setPosition(o,e.clientX-sldMouseLeft,e.clientY-sldMouseTop)
return false
}
}

document.onmousemove = sldMouseMove
</script>

</head>

<body>

<div id="sldHead" style="position:absolute;top:4px;left:4px;width:8px;height:8px;cursor:pointer;cursor:hand" onmousedown="sldMouseDown(event)" onmouseup="sldMouseUp(event)"><img src="../img/head.gif" style="height:8px;width:8px;border:0"/></div>

<div id="mousePos" style="position:absolute;height:30px;top:200px;left:4px"></div>
<div id="mouseCapt" style="position:absolute;height:30px;top:235px;left:4px"></div>
<div id="headPos" style="position:absolute;height:30px;top:270px;left:4px"></div>
<div id="mousePosRel" style="position:absolute;height:30px;top:305px;left:4px"></div>
<div id="dragStatus" style="position:absolute;height:30px;top:340px;left:4px"></div>

</body>

</html>

List of Articles
번호 제목 날짜 조회 수
320 한글줄바꾸기 또는 utf-8 wordwrap 2014.04.12 26547
319 해당하는 날짜가 그달의 몇주째인지 계산 2014.02.27 26353
318 php 세션 유지시간 늘리기 2017.03.07 26339
317 페이지 로딩 시간 측정 2014.02.27 26048
316 환경변수 HTTP_USER_AGENT를 이용해서 스마트 기기 분류하기 2016.09.21 25961
315 디렉토리내 특정 확장자를 가진 파일 전부 삭제 file 2015.04.14 25518
314 로또 숫자 랜덤하게 1~45까지 숫자 빼오기 2014.02.27 25440
313 홈페이지 귀퉁이에 붙이는 공지창 file 2015.04.06 25428
312 파일 삭제 2015.04.14 25335
311 한글자르기 substr 2015.04.14 25203
310 array (배열) 2015.04.14 24908
309 기본적인 페이징 2017.03.07 24852
308 $_SERVER변수 2014.02.27 24453
307 필드값 저장 2014.02.27 24283
306 addslashes 함수의 필요성 2015.04.14 24256
305 $_SERVER 함수 2016.12.23 23945
304 $_FILES 2016.12.23 23850
303 [PHP] POST 로 넘어온 모든 변수값 확인하기 2015.03.25 23349
302 POST, GET으로 배열값 받기(직렬화) file 2017.03.06 23294
301 ajax refresh 시키기(자동리플래쉬) with php file 2017.03.06 23187
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved