var funDrag = function(element, callback) { callback = callback || function() {}; var params = { left: 0, top: 0, currentX: 0, currentY: 0, flag: false }; //獲取相關CSS屬性 var getCss = function(o,key){ return o.currentStyle? o.currentStyle[key] : document.defaultView.getComputedStyle(o,false)[key]; }; //拖拽的實現 if(getCss(element, "left") !== "auto"){ params.left = getCss(element, "left"); } if(getCss(element, "top") !== "auto"){ params.top = getCss(element, "top"); } //o是移動對象 element.onmousedown = function(event){ params.flag = true; event = event || window.event; params.currentX = event.clientX; params.currentY = event.clientY; }; document.onmouseup = function(){ params.flag = false; if(getCss(element, "left") !== "auto"){ params.left = getCss(element, "left"); } if(getCss(element, "top") !== "auto"){ params.top = getCss(element, "top"); } callback(); }; document.onmousemove = function(event){ event = event || window.event; if(params.flag){ var nowX = event.clientX, nowY = event.clientY; var disX = nowX - params.currentX, disY = nowY - params.currentY; element.style.left = parseInt(params.left) + disX + "px"; element.style.top = parseInt(params.top) + disY + "px"; } } };
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78213.html
摘要:前面幾篇文章,我跟大家分享了的一些基礎知識,這篇文章,將會進入第一個實戰環節利用前面幾章的所涉及到的知識,封裝一個拖拽對象。不封裝對象直接實現利用原生封裝拖拽對象通過擴展來實現拖拽對象。 showImg(https://segmentfault.com/img/remote/1460000008699587); 前面幾篇文章,我跟大家分享了JavaScript的一些基礎知識,這篇文章,...
摘要:說明你可能發現有很多網站他們的登錄窗口或者說是登錄框是可以拖動的更有甚者他們的站點提示框都可以拖動你也許可能會對這個功能的實現感興趣那么這篇文章可能會對你有所幫助具體的網站示例以網易云音樂站點為例,具體效果如下圖所示實現登錄窗口的拖拽原理解 說明 你可能發現有很多網站他們的登錄窗口或者說是登錄框是可以拖動的, 更有甚者他們的站點提示框都可以拖動, 你也許可能會對這個功能的實現感興趣, ...
摘要:原生實現對元素的拖拽一背景介紹此處為鋪墊內容,可跳過隨著前端的不斷發展,各種各樣的前端規范和新知識新技術層出不窮,極大地拓展了開發者的操作空間,也大大地提升了用戶體驗。 原生 JS 實現對 html 元素的拖拽 一、背景介紹 【此處為鋪墊內容,可跳過】 隨著 Web 前端的不斷發展,各種各樣的前端規范和新知識、新技術層出不窮,極大地拓展了開發者的操作空間,也大大地提升了用戶體驗。而隨著...
摘要:原生實現對元素的拖拽一背景介紹此處為鋪墊內容,可跳過隨著前端的不斷發展,各種各樣的前端規范和新知識新技術層出不窮,極大地拓展了開發者的操作空間,也大大地提升了用戶體驗。 原生 JS 實現對 html 元素的拖拽 一、背景介紹 【此處為鋪墊內容,可跳過】 隨著 Web 前端的不斷發展,各種各樣的前端規范和新知識、新技術層出不窮,極大地拓展了開發者的操作空間,也大大地提升了用戶體驗。而隨著...
閱讀 633·2021-11-24 09:39
閱讀 3478·2019-08-30 15:53
閱讀 2509·2019-08-30 15:44
閱讀 3237·2019-08-30 12:54
閱讀 2206·2019-08-29 12:23
閱讀 3304·2019-08-26 14:05
閱讀 2101·2019-08-26 13:36
閱讀 3429·2019-08-26 13:33