• 회원가입
  • 로그인
  • 구글아이디로 로그인

[attribute] HTML - ondrag 속성 - 드래그 이벤트 시 실행할 코드 지정 (= ondrag속성 = 온드래그속성) ※ ondrag이벤트 = 온드래그이벤트

목차
  1. ondrag 예제 - 드래그 될 때 함수 실행
  2. ondrag 정의
  3. ondrag 구문

 

ondrag 예제 - 드래그 될 때 함수 실행

 

<style>

.box {

  float: left;

  width:200px;

  height:50px;

  padding: 20px;

  margin: 30px;

  text-align:center;

  border: 3px solid gray;

}

</style>


<div class="box" ondragenter="dragenterHZ(event)" ondragleave="dragleaveHZ(event)" ondrop="dropHZ(event)" ondragover="dragoverHZ(event)">

  <p ondragstart="dragstartHZ(event)" ondrag="dragHZ(event)" ondragend="dragendHZ(event)" draggable="true" id="hz">홈짱닷컴 Homzzang.com</p>

</div>


<div class="box" ondragenter="dragenterHZ(event)" ondragleave="dragleaveHZ(event)" ondrop="dropHZ(event)" ondragover="dragoverHZ(event)"></div>


<p style="clear:both;" id="demo"></p>


<script>

function dragstartHZ(event) {

  event.dataTransfer.setData("Text", event.target.id);

  document.getElementById("demo").innerHTML = "p요소 drag 시작";

}


function dragHZ(event) {

  document.getElementById("demo").innerHTML = "p요소 drag 중";

}


function dragendHZ(event) {

  document.getElementById("demo").innerHTML = "p요소 drag 완료";

}   


function dragenterHZ(event) {

  if ( event.target.className == "box" ) {

    event.target.style.borderColor = "red";

    document.getElementById("demo").innerHTML = "드롭박스 진입";

  }

}


function dragoverHZ(event) {

  event.preventDefault(); // 드롭 허용

}    

    

function dragleaveHZ(event) {

  if ( event.target.className == "box" ) {

    event.target.style.borderColor = "";

    document.getElementById("demo").innerHTML = "드롭박스 이탈";

  }

}    


function dropHZ(event) {

  event.preventDefault();

  var data = event.dataTransfer.getData("Text");

  event.target.appendChild(document.getElementById(data));

  document.getElementById("demo").innerHTML = "드롭 완료";

</script>

 

결과보기

 

ondrag 정의

 

요소를 드래그하거나 텍스트를 드래그 선택 시 발생.

 



1.

  • Drag & Drop은 HTML5의 매우 일반적인 기능임.
  • 요소를 드래그 가능하게 만들려면 draggable 전역속성 사용.
  • 링크와 이미지는 기본적으로 드래그 가능. (즉, draggable 속성 불필요.)
  • Drag & Drop 과정의 여러 단계에서 여러 이벤트가 발생함.


2. 드래그요소에서 발생하는 이벤트 :

  • ondragstart 속성 - 사용자가 요소를 드래그하기 시작할 때 발생
  • ondrag 속성 - 요소를 끌 때 발생 (※ 드래그 중  350밀리초마다 실행됨)
  • ondragend 속성 - 사용자가 요소 끌기를 완료하면 실행됩니다.


3. 드롭박스에서 발생하는 이벤트:

  • ondragenter 속성 - 드래그 된 요소가 드롭박스에 들어갈 때 실행.
  • ondragover 속성 - 드래그 된 요소가 드롭박스 위에 있을 때 실행.
  • ondragleave 속성 - 드래그 된 요소가 드롭박스를 벗어날 때 실행.
  • ondrop 속성 - 드래그 된 요소에 드롭박스에 드롭될 때 실행.


4.

IE9 이상 주요 최신 브라우저 모두 지원.

 

 

ondrag 구문

 

HTML 방식

  • <element ondrag="myScript">

 

JS 방식 (3가지)

  • object.ondrag = ()=>{myScript};
  • object.ondrag = function(){myScript};
  • object.addEventListener("drag", myScript);



[속성값]

 

myScript

드래그 중, 실행할 JS 코드

  • 주의: 함수명 사용 시, 다른 곳은 전부 소괄호까지 사용해 함수 호출하나 핑크색 myScript 자리는 "함수명만" 사용해 함수 호출.
  • 사용 방식 통일 권장.

 

 


분류 제목
attribute HTML - onkeyup 속성 ★ - 키보드키 올라갈 때 실행 (= onkeyup속성 = 온키업속성) ※ …
attribute HTML - lang 속성 - 요소 내용 언어코드 지정 (= lang속성 = 랭속성)
attribute HTML - required 속성 ★ - 폼데이터 제출 전 (입력필수/선택필수) 지정 (= required속…
etc HTML - 스크린리더기가 읽는 HTML요소 정보값 종류 (= Screen Reader provides th…
attribute HTML - onprogress 속성 - (오디오/비디오) 다운로드 시 실행 (= onprogress속성 =…
attribute HTML - onmouseout 속성 ★ - 마우스커서가 지정요소 밖으로 이동 시 실행 (= onmouseo…
attribute HTML - onselect 속성 - 요소 내용 선택 시 실행 (= onselect속성 = 온실렉트속성) ※…
attribute HTML - defer 속성 ★★★ - 페이지 파싱 완료 후 외부스크립트 실행 (= defer속성 = 디퍼속…
attribute HTML - onmouseup 속성 - 마우스버튼 올라갈 때 실행 (= onmouseup속성 = 온마우스업속…
attribute HTML - list 속성 - 인풋에 입력 가능한 데이터리스트 지정 (= list속성 = 리스트속성) ※ 입…
attribute HTML - ondrag 속성 - 드래그 이벤트 시 실행할 코드 지정 (= ondrag속성 = 온드래그속성)…
attribute HTML - tabindex 속성 - 탭색인번호 지정 (= tabindex속성 = 탭인덱스속성) ※ 탭넵비게…
attribute HTML - on으로 시작하는 속성에서 2개 이상의 여러 JS함수 실행 방법
attribute HTML - data-* 속성 ★★★ - 특정 (페이지/애플리케이션)의 사용자 데이터 저장 (= data-속…
attribute HTML - onvolumechange 속성 - (오디오/비디오) 볼륨변경 시 실행 (= onvolumech…
attribute HTML - onreset 속성 - 폼 초기화 시 실행 (= onreset속성 = 온리셋속성) ※ onres…
attribute HTML - oncopy 속성 - 요소의 텍스트나 이미지 태그를 복사 시 실행 (=oncopy속성 = 온카피…
attribute HTML - srcset 속성 - 다른 환경에서 적용할 이미지소스 지정 (= srcset속성 = 에스알시셋속…
attribute HTML - ondurationchange 속성 - 재생시간 데이터가 변경될 때 실행 (= onduratio…
form HTML - <input type="datetime-local"> 태그 - 년월일시분 입력 (= 인풋데이트타…
4/18
목록
찾아주셔서 감사합니다. Since 2012