成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > HTML5 drag和drop具體使用詳解

HTML5 drag和drop具體使用詳解

熱門標(biāo)簽:通遼地圖標(biāo)注app 智能語音電銷機(jī)器人客戶端 威海語音外呼系統(tǒng)平臺 江西ai電銷機(jī)器人如何 西安金倫外呼系統(tǒng) 地圖標(biāo)注員工作內(nèi)容 地圖標(biāo)注沿海城市房價 高德地圖標(biāo)注廁所 中國地圖標(biāo)注城市的

簡介

拖拽(Drag/Drop)是一個很普遍、很常用的操作,即抓取一個對象后,放到想要放的地方。 在H5中,拖拽是一個標(biāo)準(zhǔn)操作,任何元素都可以拖拽??! 但是!! 想要實現(xiàn)拖拽,需要添加 拖拽屬性。

H5中拖拽屬性:draggable: auto | true | false

注意:鏈接和圖片默認(rèn)是可拖動的,則不需要 draggable 屬性。

- Drag(在拖拽目標(biāo)時觸發(fā)事件)

  • dragstart - 元素開始拖動時觸發(fā)此事件
  • drag - 元素正在拖動時觸發(fā)此事件
  • dragend - 元素拖動結(jié)束后觸發(fā)此事件

- Drop(在目標(biāo)區(qū)域釋放時觸發(fā)事件)

  • dragenter - 當(dāng)被拖動的元素進(jìn)入目標(biāo)區(qū)域內(nèi)時觸發(fā)此事件
  • dragover - 當(dāng)被拖動的元素在目標(biāo)區(qū)域內(nèi)拖動時觸發(fā)此事件
  • dragleave - 當(dāng)被拖動的元素離開目標(biāo)區(qū)域時觸發(fā)此事件
  • drop - 當(dāng)被拖動的元素在目標(biāo)區(qū)域被放下時觸發(fā)此事件

拖拽步驟

設(shè)置元素屬性draggable 為 true

  <main class="main">
    <div class="left" id="left">
      <div class="txt-show">左邊區(qū)域</div>
      <div class="dargable txt" id="txt1" draggable="true">可移動的文字一</div>
      <div class="dargable txt" id="txt2" draggable="true">可移動的文字二</div>
      <div class="dargable txt" id="txt3" draggable="true">可移動的文字三</div>
      <div class="dargable txt" id="txt4" draggable="true">可移動的文字四</div>
      <div class="dargable txt" id="txt5" draggable="true">可移動的文字五</div>
    </div>
    <div class="right" id="right">
      <div class="txt-show">右邊區(qū)域</div>
    </div>
  </main>

拖動

dragstart 事件: 在進(jìn)行拖放操作時,通過dataTransfer來實現(xiàn)數(shù)據(jù)的存儲和獲取,每個event事件對象中都會有DataTransfer對象用來保存被拖動的數(shù)據(jù)。它可以保存一項或多項數(shù)據(jù)、一種或者多種數(shù)據(jù)類型。

  let left = document.getElementById('left')
  let target = document.getElementById('right')
  left.addEventListener('dragstart', (event) => {
    const target = event.target;
    // 在項目拖動的開始事件(ondragstart)的時候,可以對dataTransfer進(jìn)行設(shè)值操作(setData)。
    // 拖拽, dataTransfer 屬性, 等于運輸車
    // 后續(xù)用 dataTransfer.getData獲取
    // 在項目拖動結(jié)束的時,可以獲取dataTransfer對象里的值。
    event.dataTransfer.setData('Text', target.id)
    // js 事件有冒泡機(jī)制
    console.log('drag開始拖動啦1');
  })

drag事件:在拖拽過程中一直執(zhí)行

  left.addEventListener('drag', (event) => {
    console.log('drag正在拖啦2');
  })

dragend事件:結(jié)束

 left.addEventListener('dragend', (event) => {
    console.log('dragend拖動結(jié)束啦7');
  })

放置

dragenter 和dragleave 事件:進(jìn)入或離開目標(biāo)區(qū)域

  target.addEventListener('dragenter', (event) => {
    console.log('dragenter進(jìn)入?yún)^(qū)域啦3')
  })
    target.addEventListener('dragleave', (event) => {
    console.log('dragleave離開拖動區(qū)域啦5')
  })

dragover事件:默認(rèn)無法將數(shù)據(jù)/元素放置到其他元素中。如果需要設(shè)置允許放置,就要阻止元素的默認(rèn)行為。

  target.addEventListener('dragover', (event) => {
    // 阻止默認(rèn)行為
    event.preventDefault();
    console.log('dragover在區(qū)域內(nèi)拖動啦4')
  })

drop事件:放下

  target.addEventListener('drop', (event) => {
    console.log('drop釋放鼠標(biāo)啦6')
    let drag_id = event.dataTransfer.getData('text')
    target.appendChild(document.getElementById(drag_id))
  })

完整代碼

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    .main {
      display: flex;
      justify-content:space-around;
    }
    .left {
      width: 300px;
      height: 500px;
      border: 1px solid lightseagreen;
      margin-right: 10px;
      /* background-color: green; */
    }
    .right {
      width: 300px;
      height: 500px;
      border: 1px solid lightseagreen;
      text-align: center;
      padding: 1px;
      /* background: red; */
    }
    .txt {
      border: 1px solid gray;
      margin: 1px;
      padding: 5px;
      cursor: move;
    }
  </style>
</head>
<body>
  <main class="main">
    <div class="left" id="left">
      <div class="txt-show">左邊區(qū)域</div>
      <div class="dargable txt" id="txt1" draggable="true">可移動的文字一</div>
      <div class="dargable txt" id="txt2" draggable="true">可移動的文字二</div>
      <div class="dargable txt" id="txt3" draggable="true">可移動的文字三</div>
      <div class="dargable txt" id="txt4" draggable="true">可移動的文字四</div>
      <div class="dargable txt" id="txt5" draggable="true">可移動的文字五</div>
    </div>
    <div class="right" id="right">
      <div class="txt-show">右邊區(qū)域</div>
    </div>
  </main>
  <script>
  let left = document.getElementById('left')
  let target = document.getElementById('right')
  left.addEventListener('dragstart', (event) => {
    event.dataTransfer.setData('Text', target.id)
    console.log('drag開始拖動啦1');
  })
  target.addEventListener('dragstart', (event) => {
    const target = event.target; 
    event.dataTransfer.setData('Text', target.id)
  })
  left.addEventListener('drag', (event) => {
    console.log('drag正在拖啦2');
  })
  left.addEventListener('dragend', (event) => {
    console.log('dragend拖動結(jié)束啦7');
  })
  target.addEventListener('dragenter', (event) => {
    console.log('dragenter進(jìn)入?yún)^(qū)域啦3')
  })
  target.addEventListener('dragover', (event) => {
    event.preventDefault();
    console.log('dragover在區(qū)域內(nèi)拖動啦4')
  })
  left.addEventListener('dragover', (event) => {
    event.preventDefault();
  })
  target.addEventListener('dragleave', (event) => {
    console.log('dragleave離開拖動區(qū)域啦5')
  })
  target.addEventListener('drop', (event) => {
    let drag_id = event.dataTransfer.getData('text')
    target.appendChild(document.getElementById(drag_id))
  })
  left.addEventListener('drop', (event) => {
    let drag_id = event.dataTransfer.getData('text')
    left.appendChild(document.getElementById(drag_id))
  })
  </script>
</body>
</html>

小記

dragstart事件中通過dataTransfer來實現(xiàn)數(shù)據(jù)的存儲和獲取,每個event事件對象中都會有DataTransfer對象用來保存被拖動的數(shù)據(jù)。在項目拖動的開始事件(ondragstart)的時候,可以對dataTransfer進(jìn)行設(shè)值操作(setData)。event.dataTransfer.setData() 進(jìn)行設(shè)值,在拖動結(jié)束后,可以通過event.dataTransfer.getData()獲取dataTransfer對象里的值。

瀏覽器默認(rèn)無法將數(shù)據(jù)/元素放置到其他元素中,如果需要設(shè)置允許放置,就要阻止元素的默認(rèn)行為。通過event.preventDefault()阻止。

可以通過添加css樣式進(jìn)行對拖拽效果的改變。例:dragSrc.classList.add('ds') 。使用classList在元素中添加,移除及切換 CSS 類,classList 屬性是只讀的,但可以使用 add() 和 remove() 方法修改它。

使用 appendChild() 方法移除元素到另外一個元素。

HTML Drag and Drop API

DataTransfer()

HTML DOM appendChild() 方法

HTML DOM addEventListener() 方法

到此這篇關(guān)于HTML5 drag和drop具體使用詳解的文章就介紹到這了,更多相關(guān)HTML5 drag和drop內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

標(biāo)簽:河池 青海 崇左 阜陽 眉山 晉中 北海 營口

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《HTML5 drag和drop具體使用詳解》,本文關(guān)鍵詞  HTML5,drag,和,drop,具體,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《HTML5 drag和drop具體使用詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于HTML5 drag和drop具體使用詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    日韩欧美国产免费播放| 国产清纯在线一区二区www| 天天干天天操天天爱| 国产九色视频| 欧美一级久久久久久久大片| 国产成人精品一区二区色戒| 99精品久久久久| 亚洲一区二区三区精品中文字幕| 2001个疯子在线观看| 欧美日韩亚洲一区二区三区四区| 欧美人与禽猛交乱配| 亚洲xxxx做受欧美| 在线观看日韩欧美| www.色视频| 欧美在线短视频| 国产亚洲精品自在线观看| 欧美大胆成人| 三级网在线观看| 国产日韩精品中文字无码| 国产在线精品成人一区二区三区| 自拍av一区二区三区| 久久久久9999亚洲精品| 国产乱码一区二区| 美女黄色片视频| 国产精品福利视频一区二区三区| 欧美一区二区成人| 波多野结衣作品集| 久cao在线| 国产亚洲自拍av| 久久91超碰青草是什么| 夜夜爽av福利精品导航| 国产又粗又猛又爽又黄| 在线国产视频观看| 亚洲免费黄色| 性色av浪潮av| 久久在线精品视频| 伊人永久在线| 国产一区二区三区四区| 日韩免费av片在线观看| 韩日成人影院| 激情小说 在线视频| 国产欧美综合一区二区三区| 成人网在线播放| 成人久久一区| 濑亚美莉vs黑人在线观看| 日韩电影免费看| 久久久久久久黄色片| 国产一区免费在线| 免费在线你懂的| 国产精品视频一区二区三区麻豆| 福利视频免费在线观看| 日韩一级网站| 超碰10000| 97超视频免费观看| 亚洲福利在线视频| 国产91丝袜在线播放0| 精品夜夜澡人妻无码av| 亚州精品国产| 污污视频在线观看网站| 亚洲高清免费在线观看| 亚洲国产精品久久久久蝴蝶传媒| 激情五月婷婷基地| 国产成人麻豆精品午夜在线| 亚洲欧洲国产日韩精品| 中文字幕无码精品亚洲35| 日本熟妇毛耸耸xxxxxx| 中文字幕有码在线观看| 一级黄色高清视频| 亚洲精品久久久久久久久久久久久久| 182在线视频| 性久久久久久久久久久久久久| 日韩女优在线播放| 91亚洲永久精品| 免费一级电影| 国产精品91av| 色视频免费观看| 亚洲综合日韩在线| 亚洲精品综合久久中文字幕| 日韩在线观看免| 日本成人a视频| 成人激情视频小说免费下载| 丁香花免费高清完整在线播放| 国产精品白浆| av免费看在线| av在线一区二区三区| 在线免费看污网站| 全部孕妇毛片丰满孕妇孕| 中文字幕在线免费专区| 97超级碰碰人国产在线观看| 黑人巨大xxx| 夜夜嗨av一区二区三区四区| 国产麻豆乱码精品一区二区三区| 久久黄色精品视频| 欧美丰满美乳xxⅹ高潮www| 中文字幕成人一区| 国产精品久线在线观看| 黄色免费的网站| 欧美日韩国产三级| 九九免费精品视频| 国产视频999| 日本韩国一区二区三区| 在线视频不卡国产| 日本一区二区三区视频在线播放| 色老头一区二区三区| 久久狠狠亚洲综合| 日韩精品一区二区亚洲av观看| 一本一道久久a久久精品综合蜜臀| 丁香花在线高清完整版视频| 国产精品亚洲一区| 午夜成人影视| 97夜夜澡人人双人人人喊| 久久久久久久久久久久久夜| 亚洲激情免费观看| 国产91精品青草社区| 91精品欧美福利在线观看| 日本大片在线观看| 亚洲精品久久久久中文字幕欢迎你| 免费在线观看精品| 亚洲成人精品在线观看| 青春草在线观看视频| 国产精品婷婷| 丁香综合五月| 免费黄色特级片| 欧美美乳在线| 美女在线视频一区二区| 午夜免费激情视频| 精品网站在线看| 国产精品一区二区久久精品| 成人综合国产精品| 中文日韩在线| av天在线观看| 欧美一区二区三区观看| 福利片在线播放| av午夜精品一区二区三区| 久久国产精品二区| 天堂8在线视频| 日本人妻熟妇久久久久久| 欧美午夜在线观看| 一区二区三区午夜视频| jjzz在线观看| 在线观看免费播放网址成人| 青青草视频社区| 亚洲精品免费一区亚洲精品免费精品一区| 亚洲成人中文字幕| 久久国产精品区| 91沈先生作品| 欧美日本视频在线观看| 国产va在线播放| hd国产人妖ts另类视频| 久久久九九九热| 欧美偷拍一区二区三区| 在线视频亚洲自拍| 亚洲不卡在线| 亚洲乱码一区二区三区| 一级毛片久久久| 91在线观看入口| 精品久久久久久久久久久久久久久久久久| 亚洲男人天堂手机在线| 国产精品女人久久久| 亚洲第一天堂在线观看| 涩涩视频免费看| 欧美另类极品videosbest视| 五月综合久久| 福利在线一区| 久久久久性色av无码一区二区| 国产乱码精品一区二区三区不卡| 免费不卡亚洲欧美| 精品日韩欧美一区二区| 少妇高潮一区二区三区喷水| 不要播放器的av网站| 日韩一区欧美| 91蜜桃网站免费观看| 国产精品亚洲成人| 日韩午夜电影av| 国产寡妇亲子伦一区二区三区四区| 91精品免费在线| 亚洲精品福利在线观看| 久热免费在线观看| 亚洲天堂一级片| 亚洲精品乱码久久久久久日本蜜臀| 邻家有女韩剧在线观看国语| 日本免费在线一区| 嫩草影院一区二区| 亚洲综合精品伊人久久| 国产在线观看免费一区| 美女一级全黄| 精品久久久久99| 国产一二三四| 懂色av中文一区二区三区天美| 久久中文字幕一区二区三区| 动漫美女无遮挡免费| 亚洲精品一级二级| 成人偷拍自拍| 久久精品国产亚洲5555| 免费高清视频在线一区| 综合网五月天| 国产精品高潮久久久久无| 国产专区在线| 国产伦精品一区二区三区精品| 亚洲成av人片在线观看香蕉| 少妇人妻大乳在线视频| 欧美日韩美女在线| 午夜精品免费观看| 澳门精品久久国产| 久久香蕉视频网站| 日韩欧美黄色片| 婷婷视频在线播放| 日韩中文字幕在线播放| 91香蕉在线观看| 欧美日韩黄网站| 国产精品福利视频一区二区三区| 99热这里只有精品9| 天天干天天干天天干天天干天天干| 香蕉加勒比综合久久| 亚洲欧美春色| 激情五月五月婷婷| 一区二区三区四区免费视频| 黄色av免费在线观看| 久久精品免费一区二区三区| a中文在线播放| 四虎成人免费在线| 中国女人特级毛片| 热99精品只有里视频精品| 啪啪导航网站| h视频网站在线观看| 污污影院在线观看| 久久一区二区三区四区| 国产91丝袜在线18| 亚洲一区免费观看| 久久久久久中文| 亚洲欧美中文字幕| 韩国福利一区| 91国在线观看| 一个人看的www视频免费在线观看| 久久午夜免费视频| 午夜69成人做爰视频| 亚洲成人av免费看| 国产精品久久av| 亚洲福利久久| 久久爱91午夜羞羞| 欧美亚洲一区二区三区| 国产青青草在线| 97久久综合精品久久久综合| 国产调教打屁股xxxx网站| 97超级碰碰碰久久久| 男人揉女人奶房视频60分| 亚洲成aⅴ人片久久青草影院| 久久婷婷久久一区二区三区| 一本色道久久综合亚洲精品酒店| 国产丝袜视频一区| 国产在线观看不卡一区二区三区| 日韩图片一区| 美女扒开尿口让男人操| 风间由美久久久| 免费视频爱爱太爽了| 五月天婷婷综合社区| 国产91精品久久久久久| av影片在线播放| 欧美怡红院在线| 久久久精品国产sm调教| 国产第一页第二页| 欧美午夜激情小视频| 亚洲性xxxx| 在线观看免费成人av| 一本久道综合久久精品| 久久精品国产秦先生| 亚洲国产一区二区三区在线观看| 国产盗摄在线观看| 99国产牛牛视频在线网站| 欧美性猛交xxxx免费看手交| 男女在线观看视频| 91免费精品视频| 99福利在线| 久久精品国产一区二区三区不卡| 中文字幕国产精品| 人妻精品无码一区二区三区| 亚洲欧美久久久| 奇米色一区二区三区四区| 久久久夜精品| 99久久综合国产精品二区| 国产美女主播在线播放| 国产精品18久久久久久久网站| 麻豆精品视频在线观看免费| 亚洲曰韩产成在线| 91精品在线国产| 精品国产一区二区三区久久久蜜臀| 亚洲精品欧美日韩| 伊人色综合一区二区三区影院视频| 69精品国产久热在线观看| 美女少妇全过程你懂的久久| 欧美洲成人男女午夜视频| 亚洲尤物影院| 中日精品一色哟哟| av成人 com a| 欧洲精品在线一区| 9久re热视频在线精品| 成人在线视频免费观看| 一区二区久久久久久| 老色鬼精品视频在线观看播放| 日本黄色大片视频| 5566日本婷婷色中文字幕97| 激情综合久久| 欧美videos另类齐全| 人人干人人看| 欧美成年人视频网站| 国产伦精品一区二区免费| 一本加勒比北条麻妃| 日本一区视频在线观看免费| www欧美日韩| 熟妇高潮精品一区二区三区| 性国产高清在线观看| 免费看的黄网站| 在线中文字幕亚洲| 日韩国产在线看| 成人影片在线播放| 九九热在线观看| 精品乱码一区二区三区| 日韩激情图片| 亚洲第一福利网站| 国产盗摄一区二区| 韩国精品免费视频| 亚洲免费精彩视频| 性色av香蕉一区二区| 伊人久久久大香线蕉综合直播| 91中文字幕精品永久在线| 亚洲天堂视频网| 国产91富婆露脸刺激对白| 亚洲国产日韩在线|