校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 詳解HTML5中的拖放事件(Drag 和 drop)

詳解HTML5中的拖放事件(Drag 和 drop)

熱門標簽:飛亞外呼系統 貸款電銷人工和機器人哪個好 高德地圖標注賓館位置 西寧智能外呼系統加盟 杭州營銷電銷機器人供應商 聯通400電話申請 電視購物電銷外呼系統 電話機器人如何 百應電銷機器人產業

瀏覽器支持

Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Safari 5 支持拖放。

注釋:在 Safari 5.1.2 中不支持拖放。

HTML5 拖放實例

<!DOCTYPE html>
<html> 
<head> 
<style type="text/css"> 
#div1 {width:488px;height:70px;padding:10px;border:1px solid #aaaaaa;} 
</style> 
<script type="text/javascript"> 
function allowDrop(ev) 
{ 
ev.preventDefault(); 
} 
 
function drag(ev) 
{ 
ev.dataTransfer.setData("Text",ev.target.id); 
} 
 
function drop(ev) 
{ 
ev.preventDefault(); 
var data=ev.dataTransfer.getData("Text"); 
ev.target.appendChild(document.getElementById(data)); 
} 
</script> 
</head> 
<body> 
 
<p>請把 Aseoe logo的圖片拖放到矩形中:p> 
 
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)">div> 
<br /> 
<img id="drag1" src="http://www.aseoe.com/statics/images/eoe/logo.png" 
draggable="true" ondragstart="drag(event)" /> 
 
</body> 
</html> 

設置元素為可拖放

首先,為了使元素可拖動,把 draggable 屬性設置為 true :

拖動什么 - ondragstart 和 setData()

然后,規定當元素被拖動時,會發生什么。

在上面的例子中,ondragstart 屬性調用了一個函數,drag(event),它規定了被拖動的數據。

dataTransfer.setData() 方法設置被拖數據的數據類型和值:

function drag(ev)
{
ev.dataTransfer.setData("Text",ev.target.id);
}

在這個例子中,數據類型是 "Text",值是可拖動元素的 id ("drag1")。

放到何處 - ondragover

ondragover 事件規定在何處放置被拖動的數據。

默認地,無法將數據/元素放置到其他元素中。如果需要設置允許放置,我們必須阻止對元素的默認處理方式。

這要通過調用 ondragover 事件的 event.preventDefault() 方法:

event.preventDefault()

進行放置 - ondrop

當放置被拖數據時,會發生 drop 事件。

在上面的例子中,ondrop 屬性調用了一個函數,drop(event):

function drop(ev)
{
ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}

代碼解釋:

調用 preventDefault() 來避免瀏覽器對數據的默認處理(drop 事件的默認行為是以鏈接形式打開)

通過 dataTransfer.getData("Text") 方法獲得被拖的數據。該方法將返回在 setData() 方法中設置為相同類型的任何數據。

被拖數據是被拖元素的 id ("drag1")

把被拖元素追加到放置元素(目標元素)中

總結

以上就是這篇文章的全部內容了,希望本文的內容對各位學習或者使用HTML5能有所幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

標簽:安慶 撫州 邯鄲 晉中 煙臺 內蒙古 玉溪 牡丹江

巨人網絡通訊聲明:本文標題《詳解HTML5中的拖放事件(Drag 和 drop)》,本文關鍵詞  詳解,HTML5,中的,拖放,事件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解HTML5中的拖放事件(Drag 和 drop)》相關的同類信息!
  • 本頁收集關于詳解HTML5中的拖放事件(Drag 和 drop)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 藁城市| 高密市| 稷山县| 中牟县| 衡南县| 元江| 平远县| 武鸣县| 丰都县| 延安市| 龙泉市| 济南市| 肃宁县| 鸡东县| 陕西省| 贵定县| 含山县| 禹城市| 东兰县| 阿坝县| 平远县| 吉林省| 保定市| 奎屯市| 黄骅市| 涟源市| 高碑店市| 龙南县| 遂平县| 子长县| 仙游县| 诸暨市| 浦北县| 彭山县| 富源县| 苍山县| 疏勒县| 合山市| 龙南县| 临汾市| 双江|