本篇文章給大家分享的是有關(guān)HTML5 中怎么實現(xiàn)拖放功能,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供靖西網(wǎng)站建設(shè)、靖西做網(wǎng)站、靖西網(wǎng)站設(shè)計、靖西網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、靖西企業(yè)網(wǎng)站模板建站服務(wù),10余年靖西做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
1、拖放
拖動 W3CSchool.cc 圖片到矩形框中:
2、設(shè)置元素為可拖放
首先,為了使元素可拖動,把 draggable 屬性設(shè)置為 true :
3、拖動什么 - ondragstart 和 setData()
然后,規(guī)定當(dāng)元素被拖動時,會發(fā)生什么。在上面的例子中,ondragstart 屬性調(diào)用了一個函數(shù),drag(event),它規(guī)定了被拖動的數(shù)據(jù)。dataTransfer.setData() 方法設(shè)置被拖數(shù)據(jù)的數(shù)據(jù)類型和值:
JavaScript Code復(fù)制內(nèi)容到剪貼板
function drag(ev)
{
ev.dataTransfer.setData("Text",ev.target.id);
}
在這個例子中,數(shù)據(jù)類型是 "Text",值是可拖動元素的 id ("drag1")。
4、放到何處 - ondragover
ondragover 事件規(guī)定在何處放置被拖動的數(shù)據(jù)。默認地,無法將數(shù)據(jù)/元素放置到其他元素中。如果需要設(shè)置允許放置,我們必須阻止對元素的默認處理方式。這要通過調(diào)用 ondragover 事件的 event.preventDefault() 方法:event.preventDefault()
5、進行放置 - ondrop
當(dāng)放置被拖數(shù)據(jù)時,會發(fā)生 drop 事件。在上面的例子中,ondrop 屬性調(diào)用了一個函數(shù),drop(event):
JavaScript Code復(fù)制內(nèi)容到剪貼板
function drop(ev)
{
ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}
代碼解釋:
調(diào)用 preventDefault() 來避免瀏覽器對數(shù)據(jù)的默認處理(drop 事件的默認行為是以鏈接形式打開)。通過 dataTransfer.getData("Text") 方法獲得被拖的數(shù)據(jù)。該方法將返回在 setData() 方法中設(shè)置為相同類型的任何數(shù)據(jù)。被拖數(shù)據(jù)是被拖元素的 id ("drag1")。把被拖元素追加到放置元素(目標元素)中。
以上就是HTML5 中怎么實現(xiàn)拖放功能,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。