亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > HTML5 > 正文

HTML5拖放功能_動力節點Java學院整理

2024-09-05 07:19:09
字體:
來源:轉載
供稿:網友

拖放(Drag 和 drop)是 html5 標準的組成部分。

瀏覽器支持

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

被拖元素,dragElement :

1、添加事件:ondragstart

2、添加屬性:dragable

放置元素,dropElement:

1、添加事件:ondargenter , ondragover , ondragleave , ondragend ,ondrop

和mouser劃入劃出一類的事件很類似,字面也很好理解,不贅述了,下面會用例子來說明。

1、頁面上元素間的拖放

下面用個小例子,div間的拖放來展示,各個事件如何被觸發:

<!DOCTYPE html><html><head>    <title></title>    <meta charset="utf-8"/>    <style type="text/css">        #dropEle        div        {            float: left;        }    </style>    <script src="../../jquery-1.8.3.js" type="text/javascript" charset="utf-8"></script>    <script type="text/javascript">        /**         * 拖放(Drag 和 drop)是 HTML5 標準的組成部分。         * 瀏覽器支持         *Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Safari 5 支持拖放。         */        $(function ()        {            $("#dragEle")[0].ondragstart = function (event)            {                console.log("dragStart");                event.dataTransfer.setData("Text", event.target.id);            };            /**             * 當放置被拖數據時,會發生 drop 事件。             * 調用 preventDefault() 來避免瀏覽器對數據的默認處理(drop 事件的默認行為是以鏈接形式打開)             * @param event             */            $("#dropEle")[0].ondrop = function (event)            {             /*   for (var p in event.dataTransfer)                {                    console.log(p + " = " + event.dataTransfer[p] + " @@");                }            */                console.log("onDrop");                var id = event.dataTransfer.getData("Text");                $(this).append($("#" + id).clone().text($(this).find("div").length));                event.preventDefault();            };            /**             * ondragover 事件規定在何處放置被拖動的數據。             *默認地,無法將數據/元素放置到其他元素中。如果需要設置允許放置,我們必須阻止對元素的默認處理方式。             */            $("#dropEle")[0].ondragover = function (event)            {                console.log("onDrop over");                event.preventDefault();            }            $("#dropEle")[0].ondragenter = function (event)            {                console.log("onDrop enter");            }            $("#dropEle")[0].ondragleave = function (event)            {                console.log("onDrop leave");            }            $("#dropEle")[0].ondragend = function (event)            {                console.log("onDrop end");            }        });    </script></head><body><div style="border: 1px solid red ; width: 100px ; height: 100px ;text-align: center;line-height: 100px;"     draggable="true" id="dragEle" ></div><div style="width: 330px;min-height: 202px;border: 1px solid #444;margin-top: 20px;overflow-y: scroll;"     id="dropEle"></div></body></html> 

需要注意幾點:

a、ondragover中必須組織事件的默認行為,默認地,無法將數據/元素放置到其他元素中。

b、drop 事件的默認行為是以鏈接形式打開,所以也需要阻止其默認行為。

還有可能注意到:在拖放時,event中包含一個event.dataTransfer 對象,上例中我們使用了該對象的setData方法傳遞了拖動div的id,然后在drop中取得該id,并且復制了該元素添加到放置的div中。

下面介紹下該對象的其他方法:

event.dataTransfer :

items = [object DataTransferItemList] @@drag_drop.html:44

files = [object FileList] @@drag_drop.html:44

types = text/plain @@drag_drop.html:44

effectAllowed = all @@drag_drop.html:44

dropEffect = none @@drag_drop.html:44

clearData = function clearData() { [native code] } @@drag_drop.html:44

getData = function getData() { [native code] } @@drag_drop.html:44

setData = function setData() { [native code] } @@drag_drop.html:44

setDragImage = function setDragImage() { [native code] } @@

我使用了js打印出了它所有的屬性:

1、getData,setData上例已經使用了,clearData就是清除設置的數據。

2、值得注意的是files,當把操作系統中選擇的一個或多個文件拖入該div中,files中會存儲拖入文件的信息,然后我們通過file可以得到文件的類型,長度,內容然后實現上傳。

3、setDragImage(image, x, y)用于設置鼠標移動過程中隨鼠標一起移動的效果圖。必須在dragstart中設置。

4、types,effectAllowed和dropEffect分別是拖入元素的類型,拖拽過程中鼠標顯示的樣式,我覺得可以忽略了這幾個屬性,一般用不到。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
神马久久久久久| 美女视频黄免费的亚洲男人天堂| 国产精品18久久久久久首页狼| 91精品国产91久久久久久久久| 一本久久综合亚洲鲁鲁| 午夜精品美女自拍福到在线| 亚洲精品永久免费精品| 欧美xxxx18国产| 精品亚洲一区二区三区在线播放| 菠萝蜜影院一区二区免费| 久久久午夜视频| 欧美激情一区二区三区在线视频观看| 日本不卡高字幕在线2019| 亚洲精品久久视频| 久久久久国产一区二区三区| 欧美性猛交xxxxx免费看| 日韩高清电影免费观看完整版| 精品视频一区在线视频| 波霸ol色综合久久| 国产成人精品电影| 国产精品久久一区主播| 理论片在线不卡免费观看| 蜜臀久久99精品久久久无需会员| 最近2019年日本中文免费字幕| 亚洲男人天堂2023| 国产精品一区二区三区久久| 国产精品成人观看视频国产奇米| 国产精品成人国产乱一区| 美日韩丰满少妇在线观看| 66m—66摸成人免费视频| 欧美寡妇偷汉性猛交| 久久精品男人天堂| 国产中文欧美精品| 欧美性理论片在线观看片免费| 欧美日韩免费在线观看| 成人福利网站在线观看| 成人激情视频在线观看| 另类专区欧美制服同性| 亚洲精品国偷自产在线99热| 成人日韩在线电影| 欧美日韩免费一区| 久久久久久美女| 亚洲午夜av电影| 亚洲欧美日韩国产精品| 国产一区二区色| 国内精品视频一区| 亚洲欧美国产精品久久久久久久| 久久精品国产精品| 亚洲一区亚洲二区亚洲三区| 成人在线视频网站| 久久久999成人| www.欧美三级电影.com| 亚洲精品www久久久| 日韩激情视频在线播放| 亚洲精品视频在线播放| 国产成人精品综合久久久| 亚洲精品之草原avav久久| 亚洲精品久久久久久下一站| 日韩国产高清污视频在线观看| 亚洲一区二区三区在线视频| 国产精品视频免费在线| 成人国产精品免费视频| 亚洲乱亚洲乱妇无码| 国产免费成人av| 日韩在线视频二区| 一区二区成人精品| 国外成人性视频| 亚洲精品99999| 精品成人国产在线观看男人呻吟| 九九久久久久99精品| 亚洲精品视频中文字幕| 日韩av片免费在线观看| 97婷婷涩涩精品一区| 国产这里只有精品| 欧美激情精品久久久久久免费印度| 55夜色66夜色国产精品视频| 91精品视频免费观看| 亚洲一区二区久久久久久| 亚洲男人天堂2023| 国产亚洲欧美日韩精品| 久久亚洲综合国产精品99麻豆精品福利| 欧美精品精品精品精品免费| 一区二区三区 在线观看视| 97视频在线播放| 亚洲国产欧美一区二区三区同亚洲| 亚洲电影免费在线观看| www欧美日韩| 国产狼人综合免费视频| 日韩中文字幕免费看| 亚洲韩国青草视频| 亚洲最新在线视频| 日韩欧美国产黄色| 91欧美精品午夜性色福利在线| 国产一区玩具在线观看| 久久久精品一区| 欧美激情综合色| 国产精品极品在线| 国产精品美女久久久久av超清| 亚洲精品国产综合区久久久久久久| 高跟丝袜一区二区三区| 亚洲高清免费观看高清完整版| 国产精品69久久久久| 久久久中文字幕| 久久亚洲国产成人| 久久久av一区| 亚洲视频在线免费观看| 91美女福利视频高清| 狠狠色狠狠色综合日日小说| 亚洲一区二区中文字幕| www.日韩不卡电影av| 一区二区三区精品99久久| 日韩在线观看免费全| 疯狂欧美牲乱大交777| 欧美一级视频在线观看| 欧美日韩国产页| 97国产真实伦对白精彩视频8| 亚洲人成网站在线播| 国产又爽又黄的激情精品视频| 91精品在线国产| 亚洲国产高清自拍| 国产亚洲精品日韩| 日韩精品中文字幕在线观看| 久久国产精品久久国产精品| 欧美激情成人在线视频| 国产精品88a∨| 欧美日韩一二三四五区| 亚洲欧美一区二区精品久久久| 国内精品小视频在线观看| 日韩欧美高清视频| 亚洲第一页在线| 大桥未久av一区二区三区| 精品中文字幕视频| 国产精品视频资源| 91在线视频一区| 久久在精品线影院精品国产| 在线一区二区日韩| 亚洲综合在线中文字幕| 亚洲国产成人久久综合一区| 欧美日韩性视频| 日韩美女主播视频| 国产亚洲综合久久| 欧美成人高清视频| 日韩在线观看免费高清完整版| 日韩av片电影专区| 91日本视频在线| 国产欧美va欧美va香蕉在| 国产亚洲欧美aaaa| 4444欧美成人kkkk| 久久久国产视频| 日韩一级黄色av| 欧美午夜宅男影院在线观看| 国产成人精品网站| 精品女同一区二区三区在线播放| 亚洲精品电影网站| 欧美成人剧情片在线观看| 亚洲精品国产精品久久清纯直播| 国产在线播放91| 欧美精品久久一区二区| 国产精品欧美亚洲777777| 欧美日韩一区二区在线| 亚洲热线99精品视频| 亚洲一区二区福利| 成人国产在线激情| 国产亚洲成精品久久|