Maison >interface Web >js tutoriel >événement glisser-glisser html
En HTML, le traitement des événements s'effectue en js HTML, js et css sont indissociables. Ce qui suit est un exemple de gestion des événements glisser-déposer dans js.
L'événement glisser est divisé en deux parties, l'une est le traitement de la cible du glisser (c'est-à-dire la cible du glisser) ; .
Événement déclencheur sur la cible du glisser (élément source) :
ondragstart - déclenché lorsque l'utilisateur commence à faire glisser l'élément
ondrag - déclenché lorsque l'élément est déplacé
ondragend - déclenché une fois que l'utilisateur a fini de faire glisser l'élément
Événement déclenché lorsque la cible est relâchée :
ondragover - Cet événement est déclenché lorsque l'objet déplacé par la souris entre dans son conteneur
ondragover - Cet événement est déclenché lorsqu'un objet déplacé est glissé dans le conteneur d'un autre objet
ondragleave - Cet événement est déclenché lorsque l'objet déplacé par la souris quitte la portée de son conteneur
ondrop - Cet événement est déclenché lorsque le bouton de la souris est relâché lors d'un processus de glissement
Le code d'implémentation est le suivant : la box1 et les listes peuvent être glissées les unes vers les autres
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Title</title> <style> #box1{width: 200px;height: 250px;border:2px solid red;} #lists{ width:200px; height:250px; list-style: none;padding: 0;margin: 10px 0px; border:2px solid blue;} li{width: 150px;height: 30px; margin: 5px 0; padding:0;background: #ccc; line-height:30px;text-align: center ;} </style> <script> window.onload=function () { var box1=document.getElementById("box1"); var lists=document.getElementById("lists"); var lis=document.getElementsByTagName("li"); for(var i=0;i<lis.length;i++){ lis[i].draggable=true; lis[i].flag=false; //1、拖拽开始 lis[i].ondragstart=function () { this.flag=true; } //2、拖拽移动 two.ondrag=function () { } //3、拖拽结束 lis[i].ondragend=function () { this.flag=false; } } //投放区事件 //1、进入投放区 box1.ondragenter=function (e) { e.preventDefault(); } //2、在投放区内移动 box1.ondragover=function (e) { e.preventDefault(); } //3、离开投放区 box1.ondragleave=function (e) { e.preventDefault(); } //4、完成投放 此时可以在投放区内做处理 box1.ondrop=function (e) { e.preventDefault(); for(var i=0;i<lis.length;i++){ if(lis[i].flag){ box1.appendChild(lis[i]); } } } lists.ondragenter=function (e) { e.preventDefault(); } lists.ondragover=function (e) { e.preventDefault(); } lists.ondragleave=function (e) { e.preventDefault(); } lists.ondrop=function (e) { e.preventDefault(); for(var i=0;i<lis.length;i++){ if(lis[i].flag){ lists.appendChild(lis[i]); } } } } </script> </head> <body> <p id="box1"></p> <ul id="lists"> <li>数据1</li> <li>数据2</li> <li>数据3</li> <li>数据4</li> <li>数据5</li> <li>数据6</li> </ul> </body> </html>
Parmi eux : la méthode getElementsByTagName() renvoie une collection d'objets avec le nom de balise spécifié.
e.preventDefault(); sert à empêcher l'événement de glissement par défaut du système.
appendChild() ajoute un contrôle au contrôle spécifié.
e.preventDefault();
Ce qui précède est tout le contenu de l'événement drag html, j'espère que cela sera utile à tout le monde.
Recommandations associées :
Utilisez JS et HTML pour créer un simple code de carnet de croquis
Processus Js d'exploitation des objets DOM
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!