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

[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 - optimum 속성 - 최적 게이지값 지정 (= optimum속성 = 옵티멈속성) ※ 미터태그 …
attribute HTML - pattern 속성 - 유효한 입력값인지 정규표현식 패턴 검사 (= pattern속성 = 패턴속…
attribute HTML - placeholder 속성 - 입력값 '샘플/힌트/예시' 제공 (= placeholder속성 =…
attribute HTML - poster 속성 - 비디오태그용 포스터 지정 (= poster속성 = 포스터속성)
attribute HTML - preload 속성 - 페이지 로드 시, (오디오/비디오) 미디어파일을 로드할지 여부와 방법을 …
attribute HTML - readonly 속성 - 읽기전용 설정 (= readonly속성 = 리드온리속성) ※ (읽기만 …
attribute HTML - rel 속성 ★ - 링크문서가 현재문서와 어떤 관계인지 지정 (= rel속성 = 릴속성/렐속성)
attribute HTML - required 속성 ★ - 폼데이터 제출 전 (입력필수/선택필수) 지정 (= required속…
attribute HTML - reversed 속성 - 순서있는 리스트 스타일 타입을 역순(=내림차순)으로 표시 (= reve…
attribute HTML - rows 속성 - <textarea> 가로행수(=가로줄수=가시높이) 지정 (= rows속성 = …
attribute HTML - rowspan 속성 ★ - 테이블셀 가로행 병항 (= 가로줄 병합 = rowspan속성 = 로우…
attribute HTML - sandbox 속성 ★ - iframe태그에 삽입된 웹페이지에 제한 걸거나 특정 기능 허용 지정…
attribute HTML - scope 속성 - <th> (테이블헤더셀)의 범위 지정 (= scope속성 = 스코우프속성/스…
attribute HTML - selected 속성 ★ - 실렉트태그 기본 선택 옵션 지정 (= selected속성 = 실렉티…
attribute HTML - shape 속성 - 이미지맵 링크영역 모양 지정 (= shape속성 = 쉐이프속성) ※ 에어리어…
attribute HTML - size 속성 ★ - (INPUT 입력창크기 / SELECT 기본노출옵션개수) 지정 (= siz…
attribute HTML - sizes 속성 - 해상도별 이미지나 아이콘, 미디어(오디오/비디오) 등의 크기 지정 (= si…
attribute HTML - span 속성 ★ - 테이블 (열/열그룹) 병합 개수 지정 (= span속성 = 스팬속성) ※ …
attribute HTML - spellcheck 속성 - 맞춤법 검사 (= 철자 검사 = spellcheck속성 = 스펠체크…
attribute HTML - src 속성 ★ - 외부 리소스 URL주소 지정 (= src속성 = 에스알시속성/에스알씨속성/소…
15/18
목록
찾아주셔서 감사합니다. Since 2012