婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Html5實現如何在兩個div元素之間拖放圖像

Html5實現如何在兩個div元素之間拖放圖像

熱門標簽:百度地圖標注為什么總是封號 地圖標注柱狀圖 臨海地圖標注app 小朱地圖標注 智能芯電話機器人 怎么做百度地圖標注 400開頭的電話好申請不 咸陽穩定外呼系統軟件 四川移動電銷外呼客戶管理系統

原本效果

拖拽之后效果

代碼如下


復制代碼
代碼如下:

[code]
<!DOCTYPE HTML>
<html>
<head>
<style type="text/css">
#div1, #div2
{float:left; width:100px; height:35px; margin:10px;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>
<img src="/i/w3school_logo_black.gif" draggable="true" ondragstart="drag(event)" id="drag1" />
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)">
</div>
<div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</body>
</html>

[/code]
它看上去也許有些復雜,不過我們可以分別研究拖放事件的不同部分。

設置元素為可拖放

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

復制代碼
代碼如下:

<img 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實現如何在兩個div元素之間拖放圖像》,本文關鍵詞  Html5,實現,如,何在,兩個,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Html5實現如何在兩個div元素之間拖放圖像》相關的同類信息!
  • 本頁收集關于Html5實現如何在兩個div元素之間拖放圖像的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 景德镇市| 通江县| 盐津县| 同仁县| 孝昌县| 阿克苏市| 外汇| 星子县| 安新县| 邢台县| 定远县| 尼勒克县| 南岸区| 麻江县| 太仆寺旗| 汶川县| 田林县| 特克斯县| 通许县| 沙坪坝区| 溆浦县| 拜泉县| 珲春市| 永兴县| 广河县| 四川省| 云阳县| 二连浩特市| 琼结县| 于都县| 阿拉善左旗| 安平县| 新平| 如皋市| 石屏县| 措勤县| 芜湖县| 灵宝市| 景德镇市| 南通市| 香河县|