摘要:關(guān)于拖拽元素,在網(wǎng)上有很多例子,但都比較簡(jiǎn)單,且大多數(shù)沒(méi)有完全考慮瀏覽器窗口邊界。對(duì)拖拽代碼中的具體解釋事件流用于兼容各瀏覽器方法為了返回一個(gè),外界方便操作的接口。考慮邊界情況,在函數(shù)內(nèi)部的注釋已十分詳細(xì)。
關(guān)于拖拽元素,在網(wǎng)上有很多例子,但都比較簡(jiǎn)單,且大多數(shù)沒(méi)有完全考慮瀏覽器窗口邊界。
參考多方資料,自己寫了個(gè)較完善的封裝拖拽的方法。
先貼出代碼,復(fù)制后運(yùn)行看下效果,
所有理解在注釋中較詳細(xì)說(shuō)明。
Document
ps:注意138行,可以試著把(event.clientX-diffx)<0換成dragging.offsetLeft<0看看效果。
對(duì)拖拽代碼中的具體解釋:
①事件流用于兼容各瀏覽器
②EventTarget方法為了返回一個(gè),外界方便操作的接口。
③ EventTarget函數(shù)內(nèi)部通過(guò)switch,給拖拽元素添加onmousedown、onmousemove、onmouseup事件。
④通過(guò)將元素設(shè)置為position:absolute;再通過(guò)top和left屬性實(shí)現(xiàn)拖拽。
⑤考慮邊界情況,在函數(shù)內(nèi)部的注釋已十分詳細(xì)。
⑥最后的dragstart、drag、dragend是元素在拖拽開始到結(jié)束時(shí)候觸發(fā)的事件。
⑦返回EventTarget,為了可以給元素拖拽事件添加操作,在 EventTarget中定義這些事件流。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/94388.html
摘要:原生實(shí)現(xiàn)對(duì)元素的拖拽一背景介紹此處為鋪墊內(nèi)容,可跳過(guò)隨著前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識(shí)新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗(yàn)。 原生 JS 實(shí)現(xiàn)對(duì) html 元素的拖拽 一、背景介紹 【此處為鋪墊內(nèi)容,可跳過(guò)】 隨著 Web 前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識(shí)、新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗(yàn)。而隨著...
摘要:原生實(shí)現(xiàn)對(duì)元素的拖拽一背景介紹此處為鋪墊內(nèi)容,可跳過(guò)隨著前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識(shí)新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗(yàn)。 原生 JS 實(shí)現(xiàn)對(duì) html 元素的拖拽 一、背景介紹 【此處為鋪墊內(nèi)容,可跳過(guò)】 隨著 Web 前端的不斷發(fā)展,各種各樣的前端規(guī)范和新知識(shí)、新技術(shù)層出不窮,極大地拓展了開發(fā)者的操作空間,也大大地提升了用戶體驗(yàn)。而隨著...
摘要:遠(yuǎn)程讀取會(huì)有許多限制,防止引起不必要的安全隱患。比較時(shí)可以把點(diǎn)去掉轉(zhuǎn)為數(shù)字類型比較腳本執(zhí)行完畢下載前可以拿到更新日志時(shí)間版本號(hào)和包大小,下載時(shí)可以拿到速度。然后開啟該項(xiàng)目的構(gòu)建。將第一步生成的填至項(xiàng)目環(huán)境變量,參數(shù)名為。 父母都是做出納相關(guān)的工作,希望我能給他們做個(gè)簡(jiǎn)單的進(jìn)銷存,在上班的時(shí)候使用。開發(fā)一個(gè)不需要花錢買服務(wù)器,不需要依賴網(wǎng)絡(luò)(更新除外),單機(jī)版的程序,對(duì)于前端出身的我來(lái)說(shuō)...
摘要:定義字符中文注音或字符的解釋或發(fā)音。表單域我們都知道標(biāo)簽用于為用戶輸入創(chuàng)建表單。在中表單域添加了兩個(gè)新的屬性規(guī)定是否啟用表單的自動(dòng)完成功能,默認(rèn)。通過(guò)屬性和表單域的可以將輸入表單綁定到表單域中。 showImg(http://ww1.sinaimg.cn/large/007kscFEgy1fxgnw4hajoj31400p0q4d.jpg); 1. 認(rèn)識(shí)HTML5 HTML5并不僅僅...
閱讀 2710·2023-04-25 14:59
閱讀 904·2021-11-22 11:59
閱讀 645·2021-11-17 09:33
閱讀 2475·2021-09-27 13:34
閱讀 3909·2021-09-09 11:55
閱讀 2328·2019-08-30 15:44
閱讀 1133·2019-08-30 14:06
閱讀 1933·2019-08-29 16:55