欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

HTML5 拖放功能實現(xiàn)代碼

  發(fā)布時間:2016-07-14 15:21:32   作者:佚名   我要評論
拖放是一種常見的特性,即抓取對象以后拖到另一個位置。這篇文章主要介紹了HTML5 拖放功能實現(xiàn)代碼,感興趣的小伙伴們可以參考一下
在HTML5中,拖放是標準的一部分,任何元素都能夠拖放,具體內容如下

1、拖放 

XML/HTML Code復制內容到剪貼板
  1. <!DOCTYPE HTML>  
  2. <html>  
  3. <head>  
  4. <style type="text/css">  
  5. #div1 {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}   
  6. </style>  
  7. <script>  
  8. function allowDrop(ev)   
  9. {   
  10. ev.preventDefault();   
  11. }   
  12. function drag(ev)   
  13. {   
  14. ev.dataTransfer.setData("Text",ev.target.id);   
  15. }   
  16. function drop(ev)   
  17. {   
  18. ev.preventDefault();   
  19. var data=ev.dataTransfer.getData("Text");   
  20. ev.target.appendChild(document.getElementById(data));   
  21. }   
  22. </script>  
  23. </head>  
  24. <body>  
  25. <p>拖動 W3CSchool.cc 圖片到矩形框中:</p>  
  26. <div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div>  
  27. <br>  
  28. <img id="drag1" src="/images/logo.png" draggable="true" ondragstart="drag(event)" width="336" height="69">  
  29. </body>  
  30. </html>   

2、設置元素為可拖放
 
首先,為了使元素可拖動,把 draggable 屬性設置為 true :<img draggable="true">
 
3、拖動什么 - ondragstart 和 setData()
 
然后,規(guī)定當元素被拖動時,會發(fā)生什么。在上面的例子中,ondragstart 屬性調用了一個函數(shù),drag(event),它規(guī)定了被拖動的數(shù)據(jù)。dataTransfer.setData() 方法設置被拖數(shù)據(jù)的數(shù)據(jù)類型和值:

JavaScript Code復制內容到剪貼板
  1. function drag(ev)   
  2. {   
  3.    ev.dataTransfer.setData("Text",ev.target.id);   
  4. }    

在這個例子中,數(shù)據(jù)類型是 "Text",值是可拖動元素的 id ("drag1")。
 
4、放到何處 - ondragover
 
ondragover 事件規(guī)定在何處放置被拖動的數(shù)據(jù)。默認地,無法將數(shù)據(jù)/元素放置到其他元素中。如果需要設置允許放置,我們必須阻止對元素的默認處理方式。這要通過調用 ondragover 事件的 event.preventDefault() 方法:event.preventDefault()
 
5、進行放置 - ondrop
 
 當放置被拖數(shù)據(jù)時,會發(fā)生 drop 事件。在上面的例子中,ondrop 屬性調用了一個函數(shù),drop(event):

JavaScript Code復制內容到剪貼板
  1. function drop(ev)   
  2. {   
  3. ev.preventDefault();   
  4. var data=ev.dataTransfer.getData("Text");   
  5. ev.target.appendChild(document.getElementById(data));   
  6. }    

代碼解釋:

調用 preventDefault() 來避免瀏覽器對數(shù)據(jù)的默認處理(drop 事件的默認行為是以鏈接形式打開)。通過 dataTransfer.getData("Text") 方法獲得被拖的數(shù)據(jù)。該方法將返回在 setData() 方法中設置為相同類型的任何數(shù)據(jù)。被拖數(shù)據(jù)是被拖元素的 id ("drag1")。把被拖元素追加到放置元素(目標元素)中。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • HTML5 拖放(Drag 和 Drop)詳解與實例代碼

    本篇文章主要介紹了HTML5 拖放(Drag 和 Drop)詳解與實例代碼,具有一定的參考價值,有興趣的可以了解一下
    2017-09-14
  • HTML5中的拖放實現(xiàn)詳解

    拖放是一種常見的特性,即抓取對象以后拖到另一個位置,在 HTML5 中,拖放是標準的組成部分。在HTML5中用戶可以使用鼠標選擇一個可拖動元素,將元素拖動到一個可放置元素,
    2017-08-23
  • HTML5拖放API實現(xiàn)拖放排序的實例代碼

    HTML5 中提供了直接拖放的 API,極大的方便我們實現(xiàn)拖放效果,不需要去寫一大堆的 js,只需要通過監(jiān)聽元素的拖放事件就能實現(xiàn)各種拖放功能。
    2017-05-11
  • HTML5拖放效果的實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了HTML5拖放效果的實現(xiàn)代碼,拖放即抓取對象以后拖到另一個位具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-17
  • HTML5逐步分析實現(xiàn)拖放功能的方法

    這篇文章主要介紹了HTML5逐步分析實現(xiàn)拖放功能的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-30

最新評論