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

主頁 > 知識庫 > 詳解Html5原生拖拽操作

詳解Html5原生拖拽操作

熱門標簽:中紳電銷智能機器人 ai電銷機器人連接網關 跟電銷機器人做同事 鶴壁手機自動外呼系統怎么安裝 鄭州電銷外呼系統違法嗎 漳州人工外呼系統排名 農村住宅地圖標注 威海營銷外呼系統招商 濟南辦理400電話

最近的一次項目開發中用到了H5的拖拽功能,由于現有項目使用的是VUE全家桶,使用了vuedragable這個插件,但是整個過程是比較痛苦的。遂決定從H5拖拽的原理開始研究,然后再將其應用到數據驅動的框架中。在H5中要想實現拖放操作,至少需要經過兩個步驟:1) 將想要拖放的對象元素的draggable屬性設為true(img與a元素默認允許拖放);2) 編寫與拖放相關的事件處理代碼。為了測試簡便,我這里首先使用jQuery庫完成拖拽的基本功能。

1. 拖拽過程

1.1 拖動事件

當按住鼠標拖動draggable元素的時候會按照如下順序依次觸發

dragstart -> drag -> dragend

  1. dragstart :在按住鼠標開始拖動時候觸發(觸發一次)
  2. drag :在按住鼠標拖動的過程觸發(持續觸發)
  3. dragend :在釋放鼠標后觸發(無論是把元素放到了有效的放置目標,還是放置到了無效的放置目標上)

1.2 放置事件

當將draggable元素元素拖動到容器中將會按照如下順序依次觸發

dragenter -> dragover -> drop

dragenter:只要有元素被拖動到放置目標上,就會觸發dragenter事件
dragover:dragenter緊隨其后的就是dragover事件,而且在被拖動的元素還在放置目標的范圍內移動時,就會持續觸發該事件。
dragleave:元素被拖出了放置目標,會觸發dragleave
drop:將拖動元素放置到目標元素上的時候會激發

1.3 完整事件流

從開始拖動元素到放置元素到目標區域,將會按照如下順序依次觸發

dragstart->drag->dragenter->dragover->dragleave->drop->dragend

2. 解決firefox對拖拽不支持的問題

如果我們直接給一個元素添加draggable屬性,在chrome,opera中是可以直接進行拖拽(沒有可以釋放的操作(比如箭頭變+號)),但是在firefox卻沒有反應

    <ul class="canDrog">
        <li draggable="true" id="1">優</li>
        <li draggable="true" id="2">良</li>
        <li draggable="true" id="3">中</li>
        <li draggable="true" id="4">差</li>
    </ul>
    <script>
        //沒有任何JS代碼
    </script>

要解決這個問題必須為拖拽元素綁定dragstart事件處理函數,并且在該函數中調用event.dataTransfer.setData函數

<script>
     <ul class="canDrog">
        <li draggable="true" id="1">優</li>
        <li draggable="true" id="2">良</li>
        <li draggable="true" id="3">中</li>
        <li draggable="true" id="4">差</li>
    </ul>
    $('.canDrog > li').bind('dragstart',function(event){
        //firefox 必須訪問用于拖拽通信的dataTransfer對象
        event.dataTransfer.setData("Text",'1');
    });
</script>

3. 解決chrome,opera拖拽元素至容器中時沒有顯示可釋放標識問題

可釋放標識使用不同的操作系統可能不同,在mac chrome中出現的是一個圓形標識里面嵌入一個白色的'+'。

解決方案是為容器綁定dragover事件

     <ul class="canDrog">
        <li draggable="true" id="1">優</li>
        <li draggable="true" id="2">良</li>
        <li draggable="true" id="3">中</li>
        <li draggable="true" id="4">差</li>
    </ul>
    <table class="dataTbl">
            <thead>
                <tr>
                    <th style="width: 10%">節次/星期</th>
                    <th>周一</th>
                    <th>周二</th>
                    <th>周三</th>
                    <th>周四</th>
                    <th>周五</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>第一節</td>
                    <td draggable="true" ></td>
                    <td draggable="true" ></td>
                    <td draggable="true" ></td>
                    <td draggable="true" ></td>
                    <td draggable="true" ></td>
                </tr>
                <!--此處省略-->
            </tbody>
    </table>
<script>
    $('.canDrog > li').bind('dragstart',function(event){
        //firefox 必須訪問用于拖拽通信的dataTransfer對象
        event.dataTransfer.setData("Text",'1');
    });
    //google chrome,opera需要添加
    $(".dataTbl").bind("dragover",'td',function(e){  
        e.originalEvent.preventDefault();  
    })  
</script>

4. 解決放置時firefox打開新選項卡問題

使用firefox的時候如果釋放了被拖拽的元素,默認瀏覽器將會打開一個新的選項卡,如下

這是由于drop回調函數之后瀏覽器執行了默認行為,通常的解決方案在拖拽容器的drop鉤子中添加阻止默認事件執行以及阻止冒泡的代碼。

<script>
    //將元素釋放到當前元素中
    $('.dataTbl').bind('drop','td',function(event){
        console.log('+++drop');
        event.preventDefault();
        event.stopPropagation();
    });
</script>

但是如果將draggable元素拖到其他地方,依然會導致打開新選項卡問題的出現,這時可以為所有容器添加如上代碼。

5. 編寫一個完整小例子

源碼: https://github.com/pluslicy/drag

隨后將對vuedraggable插件庫進行學習,應用在vue框架中

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

標簽:萍鄉 甘南 惠州 營口 紅河 蘇州 咸陽 文山

巨人網絡通訊聲明:本文標題《詳解Html5原生拖拽操作》,本文關鍵詞  詳解,Html5,原生,拖拽,操作,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解Html5原生拖拽操作》相關的同類信息!
  • 本頁收集關于詳解Html5原生拖拽操作的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人午夜视频在线| 亚洲永久精品大片| 日韩精品一区二区三区四区| 欧美日韩国产高清一区| 在线观看一区日韩| 欧美在线观看视频一区二区三区| 91官网在线免费观看| 欧美午夜精品久久久久久孕妇 | 这里只有精品电影| 日韩欧美在线123| 精品日韩一区二区| 国产精品美女久久久久久久 | 精品美女一区二区| 久久综合久久鬼色中文字| 国产日韩欧美麻豆| 亚洲免费在线观看视频| 午夜精品成人在线视频| 精品一区二区三区免费观看| 国产成人在线视频免费播放| fc2成人免费人成在线观看播放 | 国产成人av一区二区| 粉嫩绯色av一区二区在线观看| 成人免费毛片a| 欧美日韩1区2区| 久久久久青草大香线综合精品| 中文字幕一区二区三区不卡| 性做久久久久久免费观看欧美| 精品一区二区三区久久久| 国产91富婆露脸刺激对白| 欧美日韩午夜影院| 中文字幕成人av| 肉肉av福利一精品导航| 国产成人鲁色资源国产91色综| 在线观看91精品国产入口| 精品国产亚洲一区二区三区在线观看| 亚洲色图都市小说| 久久99国产精品久久| 色偷偷成人一区二区三区91| 精品久久久久久久人人人人传媒| 亚洲欧美日韩国产手机在线| 久久国产麻豆精品| 欧美三级日韩在线| 中文字幕一区二区三区色视频| 日本特黄久久久高潮| 91啪亚洲精品| 国产欧美一区二区精品忘忧草| 五月天激情综合| 一本到三区不卡视频| 26uuu色噜噜精品一区二区| 亚洲高清视频的网址| 丁香婷婷深情五月亚洲| xvideos.蜜桃一区二区| 日本在线播放一区二区三区| 91小视频免费观看| 国产免费久久精品| 国产乱码精品一品二品| 欧美一区二区私人影院日本| 亚洲与欧洲av电影| 99re免费视频精品全部| 国产农村妇女毛片精品久久麻豆 | 国产精品人成在线观看免费 | 91麻豆精品国产91久久久久 | 精品国产99国产精品| 午夜av一区二区三区| 在线观看www91| 亚洲一区日韩精品中文字幕| 91视频观看视频| 亚洲欧洲成人自拍| 不卡电影一区二区三区| 欧美国产在线观看| 成人免费视频免费观看| 中文字幕免费一区| 国产成人在线视频网址| 国产拍欧美日韩视频二区| 国产精品一区在线观看乱码| 久久综合九色综合欧美就去吻| 麻豆成人91精品二区三区| 欧美一级精品大片| 免费精品99久久国产综合精品| 欧美一二三四区在线| 裸体健美xxxx欧美裸体表演| 精品日韩一区二区| 国产成人精品免费网站| **欧美大码日韩| 欧美亚一区二区| 婷婷一区二区三区| 久久久久久久一区| 91天堂素人约啪| 亚洲va欧美va人人爽| 5858s免费视频成人| 韩国精品主播一区二区在线观看| 国产日本亚洲高清| 色就色 综合激情| 日韩中文字幕麻豆| 国产日韩av一区二区| 色乱码一区二区三区88| 日韩av一区二| 中文字幕二三区不卡| 欧美在线色视频| 国产精品亚洲成人| 亚洲美女少妇撒尿| 欧美www视频| 91婷婷韩国欧美一区二区| 亚洲成人动漫一区| 久久你懂得1024| 在线观看国产一区二区| 狠狠色丁香九九婷婷综合五月| 亚洲视频在线一区二区| 3d成人h动漫网站入口| 国产suv精品一区二区三区| 亚洲大片免费看| 中文字幕第一区二区| 在线不卡一区二区| 成人激情视频网站| 久久99精品国产麻豆婷婷 | 91麻豆精品久久久久蜜臀| 国产黑丝在线一区二区三区| 亚洲激情图片一区| 国产视频一区二区在线| 欧美人狂配大交3d怪物一区| 成人黄色一级视频| 激情综合网天天干| 日韩高清不卡一区二区| 亚洲女同ⅹxx女同tv| 久久久精品影视| 精品剧情在线观看| 4438x成人网最大色成网站| a在线欧美一区| 成人黄色在线看| 国产专区欧美精品| 美日韩一区二区三区| 污片在线观看一区二区| 一区二区三区在线视频观看 | 亚洲乱码中文字幕| 中文字幕欧美三区| 国产三级三级三级精品8ⅰ区| 欧美一级二级在线观看| 91精品国产综合久久香蕉的特点| 欧美性大战xxxxx久久久| heyzo一本久久综合| 粉嫩欧美一区二区三区高清影视| 另类成人小视频在线| 亚洲va韩国va欧美va| 亚洲一区二区偷拍精品| 亚洲欧美激情插| 一区二区三区视频在线观看 | 日韩免费高清av| 欧美一区二区免费| 67194成人在线观看| 91精品国产综合久久久蜜臀图片 | 精品噜噜噜噜久久久久久久久试看 | 免费av成人在线| 老司机免费视频一区二区三区| 日本不卡在线视频| 久久99精品国产91久久来源| 国内一区二区视频| 国产激情偷乱视频一区二区三区| 国产精品一区在线| 成人avav影音| 日本电影亚洲天堂一区| 欧美久久久久免费| 欧美精品一区二区三区在线播放| 精品人在线二区三区| 国产拍欧美日韩视频二区| 亚洲男同性视频| 偷偷要91色婷婷| 国产综合色在线| 99久久精品免费看国产免费软件| 91福利视频久久久久| 欧美一级免费观看| 欧美经典三级视频一区二区三区| 亚洲人妖av一区二区| 亚洲成人www| 国产一区二区三区四区五区入口| thepron国产精品| 91精品在线免费观看| 中文av一区特黄| 三级欧美韩日大片在线看| 国内精品伊人久久久久影院对白| 不卡一区二区在线| 欧美日本一区二区| 中文字幕欧美日本乱码一线二线| 亚洲一区二区成人在线观看| 国产乱对白刺激视频不卡| 在线视频一区二区免费| 欧美不卡在线视频| 亚洲第一成人在线| 国产91丝袜在线18| 717成人午夜免费福利电影| 国产婷婷色一区二区三区| 亚洲午夜精品17c| caoporn国产一区二区| 欧美一卡二卡在线观看| 综合久久一区二区三区| 国产综合一区二区| 91精品国产福利| 亚洲黄网站在线观看| 成人aaaa免费全部观看| 精品久久久久久综合日本欧美| 亚洲自拍偷拍网站|