中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用JavaScript實現一個拖放刪除功能

發布時間:2020-11-06 17:26:21 來源:億速云 閱讀:176 作者:Leah 欄目:開發技術

利用JavaScript實現一個拖放刪除功能?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

實現的效果如下:

利用JavaScript實現一個拖放刪除功能

代碼如下:

<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html" charset="utf-8">
 <title>通過拖放實現添加刪除</title>
 <style type="text/css">
 div>div{
  display: inline-block;
  padding: 10px;
  background-color: #aaa;
  margin: 3px;
 }
 </style>
</head>
<body>
 <!-- 文件所在地 -->
 <div >
 <h3>可將喜歡的項目拖進收藏夾</h3>
 <div draggable="true" "dsHandler(event);">瘋狂Java聯盟</div>
 <div draggable="true" "dsHandler(event);">瘋狂軟件教育</div>
 <div draggable="true" "dsHandler(event);">關于我們</div>
 <div draggable="true" "dsHandler(event);">瘋狂成員</div>
 </div>
 <!-- 收藏夾 -->
 <div id="dest" >
 <h3 "return false;">收藏夾</h3>
 </div>
 <!-- 垃圾簍 -->
 <img id="gb" draggable="false" alt="垃圾簍" src="C:\Users\Administrator\Desktop\timg.jpg" >

 <!-- js -->
 <script type="text/javascript">
 let dest=document.getElementById("dest");
 //開始拖動事件的事件監聽器
 let dsHandler=function(event){
  event.dataTransfer.setData("text/plain","<item>"+event.target.innerHTML);
 }

 dest.function(event){
  event.preventDefault();
  let text=event.dataTransfer.getData("text/plain");
  //如果該text以<item>開頭
  if(text.indexOf("<item>")==0){
  //創建一個新的div
  let newEle=document.createElement("div");
  //以當前事件為該元素生成唯一的ID
  newEle.id=new Date().getUTCMilliseconds();
  //該元素內容為“拖”過來的數據
  newEle.innerHTML=text.substring(6);
  //設置該元素允許拖動
  newEle.draggable="true";
  //為該事件的開始拖動事件指定監聽器
  newEle.function(event){
   //將被拖動元素的id屬性值設置成被拖動的數據
   event.dataTransfer.setData("text/plain","<remove>"+newEle.id);
  }
  dest.appendChild(newEle);
  }
 }

 //當把被拖動元素“放”到垃圾簍上時觸發該方法
 document.getElementById("gb").function(event){
  let id=event.dataTransfer.getData("text/plain");
  //如果id以<remove>開頭
  if (id.indexOf("<remove>")==0) {
  //根據“拖”過來的數據,獲取被拖動的元素
  let target=document.getElementById(id.substring(8));
  //刪除被拖動的元素
  dest.removeChild(target);
  }
 }

 //ondragover 被拖動的元素進入本元素的范圍內拖動時會不斷地觸發該事件
 document.function(event){
  //取消事件的默認行為
  return false;
 }

 //ondrop 其他元素被放到了本元素中時觸發該事件
 document.function(event){
  //取消事件的默認行為
  return false;
 }
 </script>
</body>
</html>

看完上述內容,你們掌握利用JavaScript實現一個拖放刪除功能的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

墨竹工卡县| 体育| 黄梅县| 平泉县| 黎城县| 林州市| 龙岩市| 葫芦岛市| 南部县| 定南县| 外汇| 噶尔县| 磐安县| 津南区| 义马市| 宜君县| 东山县| 石屏县| 梅河口市| 水富县| 武邑县| 佛坪县| 板桥市| 胶南市| 当阳市| 象州县| 从江县| 姚安县| 德钦县| 永德县| 崇州市| 鹤山市| 柳河县| 棋牌| 湖南省| 郧西县| 冀州市| 永平县| 合肥市| 贵阳市| 高淳县|