HTML5 새 속성 드래그 속성(소개)
이 글에서는 HTML5의 새로운 속성 중 드래그 앤 드롭 속성에 대해 소개하겠습니다. 참고할 만한 가치가 있는 친구들이 참고하시면 좋겠습니다.
HTML5에 추가된 많은 새로운 속성:
o FileClassType 선언()Only 에는 한 가지 유형만 있습니다. .
o 새로운 구문 분석 순차 순서: 더 이상 SGML을 기반으로 하지 않습니다.
o새 요소: section, video, 진행률,nav, 미터, 시간, 따로, 캔버스, 명령, 데이터 목록, 세부 정보, 포함, figcaption,그림, 바닥글, 머리글, hgroup, keygen, 표시, 출력, rp, rt, 루비, 소스, 요약, wbr.
oInputNew classtype: date, email, urletc.
o새 속성: ping(a 및 area용) , charset(meta용) ), 비동기 ( script용).
o전역 속성: id, tabindex,peat.
o새로운 전역 속성: contenteditable, contextmenu, draggable, dropzone, hide, 맞춤법 검사.
o요소 제거: acronym, applet,basefont, big, center, dir, 글꼴, 프레임, 프레임셋, isindex, noframes, Strike,tt. 이제 HTML5의 새로운 속성 중 드래그 앤 드롭 속성을 소개하겠습니다. ㅋㅋㅋ Event.dataTransfer
Draggable 속성 : Gu이름 의미meaning, 드래그한 요소는 draggable=true로 설정해야 합니다. 그렇지 않으면 효과가 없습니다
<p draggable =’true’></p>
String파일
filelist
모스 커서 | 스트링 |
| |||||||||||||||
mozItemCount | 서명되지 않은 긴 |
| |||||||||||||||
Node |
| 유형 ||||||||||||||||
| ondragstart 이벤트: 드래그 요소가 드래그되기 시작하면 이벤트가 트리거되고 이 이벤트는 드래그된 요소에 대해 작동합니다 . 온드라젠터 이벤트: 드래그 요소 가 viewmarker에 들어갈 때 요소가 트리거될 때 이벤트, 이 이벤트는 요소의 대상에 작용합니다. 온드래그오버 이벤트: 드래그 요소 가 eyemarker 요소 를 통과할 때 를 터치했을 때 의 이벤트, 이 이벤트는 대상 요소에 작용합니다. ondrop이벤트: 드래그 요소 가 동시에 대상 요소에서 마우스를 놓을 때 트리거되면 이 이벤트는 대상 요소에 작용합니다ondragend 이벤트: 드래그가 완료되면 가 트리거됩니다. 이벤트는 드래그된 요소에 대해 작동합니다. Event.preventDefault() 메소드 : 실행 방지 기본 이벤트 방법 등 PreventDefault는 ondrop에서 실행되어야 합니다. 그렇지 않으면 ondrop 이벤트가 트리거되지 않습니다. 또한, 다른 애플리케이션이나 파일, 특히 사진에서 무언가를 드래그하는 경우 기본 동작은 사진이나 관련 정보를 표시하는 것이며 실제로 드롭을 실행하지는 않습니다. 이때 문서의 ondragover 이벤트를 사용하여 Event. effectAllowed 속성: 드래그 효과, 값 가져오기:None, copy, copyLink, copyMove, link, linkMove , move, all, 초기화되지 않음(기본값) value meaning
事件触发顺序 ondragstart->ondragenter->ondragover->ondrop->ondragend Demobox从右边拖到container中后,box在右边消失,container中添加了被拖拽的box。 右边的box是可排序的。 代码 <body> <p class="container"> container </p> <p class="boxList"> <p class="box" draggable="true">box-1</p> <p class="box" draggable="true">box-2</p> <p class="box" draggable="true">box-3</p> <p class="box" draggable="true">box-4</p> <p class="box" draggable="true">box-5</p> <p class="box" draggable="true">box-6</p> <p class="box" draggable="true">box-7</p> </p> <p class="alert"/> </body> 로그인 후 복사 <script> var container = document.getElementsByClassName('container')[0]; var boxList = document.getElementsByClassName('boxList')[0]; var boxes = document.getElementsByClassName('box'); var listLength = boxes.length; var targetDropEle=null; (function () { for(let i=0;i<listLength;i++){ boxes[i].ondragstart = function (ev) { ev.dataTransfer.effectAllowed = "move"; ev.dataTransfer.setDragImage(ev.target, 0, 0); ev.dataTransfer.setData("Text",i+1); // dataTransfer.setData() 方法设置被拖数据的数据类型和值 // 数据类型是text,值是可拖动元素的innerHTML targetDropEle = ev.target; showAlter("ondragstart") } boxes[i].ondragend = function(ev) { /*拖拽结束*/ ev.dataTransfer.clearData("Text"); targetDropEle = null; showAlter("ondragend"); return false }; boxes[i].ondragover = function () { /*拖拽元素进入目标元素上移动*/ showAlter("ondragover"); event.preventDefault(); // 默认地,无法将数据/元素放置到其他元素中。如果需要设置允许放置,我们必须阻止对元素的默认处理方式; } boxes[i].ondragenter = function (ev) { showAlter("ondragenter"); /*拖拽元素进入目标元素*/ } boxes[i].ondrop = function (ev) { /*拖拽元素进入目标元素头上,同时鼠标松开的时候*/ if(targetDropEle){ ev.preventDefault(); // 调用 preventDefault() 来避免浏览器对数据的默认处理(drop 事件的默认行为是以链接形式打开) showAlter("ondrop"); ev.target.parentNode.insertBefore(targetDropEle,ev.target); } } } container.ondragover = function () { /*拖拽元素进入目标元素上移动*/ showAlter("ondragover"); event.preventDefault(); // 默认地,无法将数据/元素放置到其他元素中。如果需要设置允许放置,我们必须阻止对元素的默认处理方式; } container.ondragenter = function (ev) { showAlter("ondragenter"); /*拖拽元素进入目标元素*/ ev.target.style.opacity=0.5 } container.ondrop = function (ev) { /*拖拽元素进入目标元素头上,同时鼠标松开的时候*/ if(targetDropEle){ ev.preventDefault(); // 调用 preventDefault() 来避免浏览器对数据的默认处理(drop 事件的默认行为是以链接形式打开) showAlter("ondrop"); // let number=ev.dataTransfer.getData("Text"); // if(number%2==0){ // return false; // } targetDropEle.parentNode.removeChild(targetDropEle); container.appendChild(targetDropEle); ev.target.style.opacity=1; } } })(); function showAlter(content) { setTimeout(function () { document.getElementsByClassName('alert')[0].style.display="none" },1000) document.getElementsByClassName('alert')[0].innerHTML=content; document.getElementsByClassName('alert')[0].style.display="block" console.log(content); } </script> 로그인 후 복사 还看到了一些html5的新属性就写在文章末尾吧 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Title</title> <style> .userInfo{ color: red; } .userInfo :hover{ color: transparent; } .userInfo:hover:after{ content: attr(data-hover-response); color: black; } </style> </head> <body> <!--data-***--> <!--符合html5的规范--> <!--js提供dataset方法--> <!--css提供attr()方法--> <!--<div userid = "6666" name="hugo"></div>--> <div id ="user" data-userid="6666" data-hover-response="see I am changed" data-name="hugo" data-date-of-birthday>Fiona</div> <!--datalist--> browsers:<input list="browsers"> <datalist id="browsers"> <option value="chrome"></option> <option value="fireFox"></option> <option value="IE"></option> <option value="Opera"></option> <option value="Safari"></option> </datalist> <!--download属性:表明资源是让用户下载的而不是立即显示的。download的值就是文件名--> <div style="margin-top: 20px"> <a href="1-160F6160T7.jpg" download="kitty.jpg"> download with download </a> <a href="1-160F6160T7.jpg" style="margin-left: 20px"> download without download </a> </div> <!--下载动态生成的文件,通bob创建二进制文件,然后用这个属性下载到本地--> <!--autofocus 页面加载时自动获得焦点,仅对于input, button, textarea等表单元素有效,多个autofocus存在时候,作用与第一个--> <div style="margin-top: 20px"> <input> <button autofocus="autofocus">click me</button> <textarea autofocus="autofocus"></textarea> <input autofocus="autofocus"> </div> <!--placeholder--> <div style="margin-top: 20px"> <input placeholder="use rname"> </div> <!--menu目前chrome safari不支持--> <div> <menu type="context" id="mymenu"> <menuitem label="fresh post"></menuitem> <menuitem label="skip to moment"></menuitem> <menuitem label="share to..."> <menuitem label="facebook"></menuitem> <menuitem label="twitter"></menuitem> </menuitem> </menu> </div> </body> <script> var user = document.getElementById("user"); //驼峰的写法 user.dataset.dateOfBirthday = "1992-04-04" user.dataset.englishName = "Fiona" // <!--下载动态生成的文件,通bob创建二进制文件,然后用这个属性下载到本地--> var blob = new Blob(["hello world I am content "]);//文本内容 var a = document.createElement("a"); a.href = window.URL.createObjectURL(blob); a.download = "hello world.txt"; a.textContent = "download hello world" document.body.appendChild(a) </script> </html> 로그인 후 복사 总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关教程请访问Html5视频教程! 相关推荐: 위 내용은 HTML5 새 속성 드래그 속성(소개)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요! 본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
![]() 핫 AI 도구![]() Undresser.AI Undress사실적인 누드 사진을 만들기 위한 AI 기반 앱 ![]() AI Clothes Remover사진에서 옷을 제거하는 온라인 AI 도구입니다. ![]() Undress AI Tool무료로 이미지를 벗다 ![]() Clothoff.ioAI 옷 제거제 ![]() AI Hentai GeneratorAI Hentai를 무료로 생성하십시오. ![]() 인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
2 몇 주 전
By DDD
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
4 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
![]() 뜨거운 도구![]() 메모장++7.3.1사용하기 쉬운 무료 코드 편집기 ![]() SublimeText3 중국어 버전중국어 버전, 사용하기 매우 쉽습니다. ![]() 스튜디오 13.0.1 보내기강력한 PHP 통합 개발 환경 ![]() 드림위버 CS6시각적 웹 개발 도구 ![]() SublimeText3 Mac 버전신 수준의 코드 편집 소프트웨어(SublimeText3) ![]() 뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
![]() ![]()
Cakephp 튜토리얼
![]() ![]()
Steam의 계정 이름 형식은 무엇입니까?
![]() ![]()
Win11 활성화 키 영구
![]() ![]()
NYT 연결 힌트와 답변
![]() ![]() ![]() HTML의 테이블 테두리 안내. 여기에서는 HTML의 테이블 테두리 예제를 사용하여 테이블 테두리를 정의하는 여러 가지 방법을 논의합니다. ![]() HTML 여백-왼쪽 안내. 여기에서는 HTML margin-left에 대한 간략한 개요와 코드 구현과 함께 예제를 논의합니다. ![]() HTML의 Nested Table에 대한 안내입니다. 여기에서는 각 예와 함께 테이블 내에 테이블을 만드는 방법을 설명합니다. ![]() HTML 테이블 레이아웃 안내. 여기에서는 HTML 테이블 레이아웃의 값에 대해 예제 및 출력 n 세부 사항과 함께 논의합니다. ![]() HTML 입력 자리 표시자 안내. 여기서는 코드 및 출력과 함께 HTML 입력 자리 표시자의 예를 논의합니다. ![]() HTML 순서 목록에 대한 안내입니다. 여기서는 HTML Ordered 목록 및 유형에 대한 소개와 각각의 예에 대해서도 설명합니다. ![]() HTML에서 텍스트 이동 안내. 여기서는 Marquee 태그가 구문과 함께 작동하는 방식과 구현할 예제에 대해 소개합니다. ![]() HTML onclick 버튼에 대한 안내입니다. 여기에서는 각각의 소개, 작업, 예제 및 다양한 이벤트의 onclick 이벤트에 대해 설명합니다. ![]() |