日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

自学HTML5第三节(拖放效果)

發布時間:2025/3/20 HTML 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 自学HTML5第三节(拖放效果) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天來看看網頁上的拖放效果,首先來看看什么是拖放————

拖放

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

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

瀏覽器支持

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

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

?

html代碼:

<!DOCTYPE HTML> <html> <head> <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><div id="div1" οndrοp="drop(event)" οndragοver="allowDrop(event)"></div> <img id="drag1" src="img_logo.gif" draggable="true" οndragstart="drag(event)" width="336" height="69" /></body> </html>

設置元素為可拖放

首先,為了使元素可拖動,把要拖動的元素,比如img標簽元素里的 draggable 屬性設置為 true :

<img draggable="true" />

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

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

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

function drag(ev) { ev.dataTransfer.setData("Text",ev.target.id); //在這個例子中,數據類型是 "Text",值是可拖動元素的 id ("drag1")。 }

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

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

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

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

?

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

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

function drop(ev) { ev.preventDefault(); var data=ev.dataTransfer.getData("Text"); //通過 dataTransfer.getData("Text") 方法獲得被拖的數據。該方法將返回在 setData() 方法中設置為相同類型的任何數據。 ev.target.appendChild(document.getElementById(data));}

?

轉載于:https://www.cnblogs.com/jxh-it/p/4012796.html

總結

以上是生活随笔為你收集整理的自学HTML5第三节(拖放效果)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。