久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

HTML5拖放效果的實現(xiàn)代碼

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

拖放

拖放是一種常見的特性,即抓取對象以后拖到另一個位置。

在 HTML5 中,拖放是標準的一部分,任何元素都能夠拖放。

Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 支持拖動。

注意:Safari 5.1.2不支持拖動.

實例:

<!DOCTYPE html>  
<html>  
<head>  
    <title>拖放</title>  
    <style type="text/css">  
        #div1{width:360px;height:220px;padding:20px;border:1px solid black;}  
    </style>  
    <script>  
        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>  
    <div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div>  
    <br />  
    <img id="drag1" src="img/bg_1.jpg" draggable="true" ondragstart="drag(event)"  width="300px" height="180px" />  
</body>  
</html>  

首先,為了使元素可拖動,把draggable 屬性設(shè)置為 true :<img draggable="true">

然后,規(guī)定當元素被拖動時,會發(fā)生什么。
在上面的例子中,ondragstart 屬性調(diào)用了一個函數(shù),drag(event),它規(guī)定了被拖動的數(shù)據(jù)。
dataTransfer.setData() 方法設(shè)置被拖數(shù)據(jù)的數(shù)據(jù)類型和值:

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

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

ondragover 事件規(guī)定在何處放置被拖動的數(shù)據(jù)。
默認地,無法將數(shù)據(jù)/元素放置到其他元素中。如果需要設(shè)置允許放置,我們必須阻止對元素的默認處理方式。
這要通過調(diào)用 ondragover 事件 event.preventDefault() 方法event.preventDefault()

當放置被拖數(shù)據(jù)時,會發(fā)生 drop 事件。
在上面的例子中,ondrop 屬性調(diào)用了一個函數(shù),drop(event):

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")
把被拖元素追加到放置元素(目標元素)中

來回拖動:

若要在兩個地方來回拖動,只需將上面代碼稍作修改就行了.
將body中的代碼改成:

<body>  
    <div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)">  
    <img id="drag1" src="img/bg_1.jpg" draggable="true" ondragstart="drag(event)"  width="300px" height="180px" /></div>  
    <div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)"></div>  
</body>  

然后在style樣式中加上#div2就可以了:

<style type="text/css">  
        #div1,#div2{width:360px;height:220px;padding:20px;border:1px solid black;}  
    </style>  

這樣就可以實現(xiàn)來回拖放了。

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

【網(wǎng)站聲明】本站除付費源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學習交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

這篇文章主要介紹了有關(guān)HTML5頁面在iPhoneX適配問題,需要的朋友可以參考下
本篇文章主要介紹了html5中canvas圖表實現(xiàn)柱狀圖的示例,本文使用canvas來實現(xiàn)一個圖表,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
Adobe公司出品的多媒體處理軟件產(chǎn)品線較多,涵蓋了音視頻編輯、圖像處理、平面設(shè)計、影視后期等領(lǐng)域。這篇文章主要介紹了Adobe Html5 Extension開發(fā)初體驗圖文教程,非常不錯,需要的朋
這篇文章主要介紹了基于HTML5的WebGL經(jīng)典3D虛擬機房漫游動畫,需要的朋友可以參考下
這篇文章主要介紹了html5實現(xiàn)移動端適配完美寫法,需要的朋友可以參考下
本篇文章主要介紹了HTML5響應(yīng)式(自適應(yīng))網(wǎng)頁設(shè)計的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
主站蜘蛛池模板: 91天堂 | 538在线精品 | 国产成人福利在线 | 日韩高清黄色 | 国产精品久久久久久模特 | www.4567 | 久久精品中文字幕 | 亚洲免费av一区 | 久久久久久国产精品 | 91在线最新| 国产在线观看不卡一区二区三区 | 国产欧美精品一区二区三区 | 国产午夜精品一区二区三区四区 | 中文字幕亚洲一区二区三区 | 搞av.com | 国产一区二区三区四区在线观看 | 国产成人av一区二区三区 | 成人看片在线观看 | 免费观看黄色片视频 | 在线免费观看成年人视频 | 欧洲毛片 | 日韩成年人视频在线 | 一区二区三区久久久 | 免费av在线网站 | 久久精品亚洲一区二区三区浴池 | 午夜影院视频 | 国产a级黄色录像 | 精精国产xxxx视频在线播放 | 精品久久久久香蕉网 | 免费观看一级毛片 | 精品国产一区二区三区久久久久久 | 一级aaaaaa毛片免费同男同女 | 国产精品精品视频一区二区三区 | 91干b| 福利电影在线 | 在线观看国产www | 古装人性做爰av网站 | 成人无遮挡毛片免费看 | 欧美另类视频在线 | 成人午夜在线视频 | 在线国产一区 |