js封裝乙個運動函式 move (js工具庫)

2022-08-23 22:09:11 字數 696 閱讀 9939

直接用js封裝乙個運動函式,使用時直接呼叫就行,比如做輪播圖時就可以呼叫

/** @ele:要進行運動的元素

* @attr:要進行運動css屬性

* @target:運動的目標位置

* @cb:運動結束後,要執行的函式

*/function sport(ele,obj,cb); //

將所有定時器都放到這個物件中

for(let attr in obj)

else

//設定定時器,讓當前樣式每隔20毫秒增加5px

//通過每個css屬性來識別這個定時器

timerobj[attr] = setinterval(function()else

//當前樣式不能都加5,否則不均與,所以加上比例

currentstyle +=percent;

//判斷增加後的樣式是否到達指定距離

if(currentstyle == target)

//如果個數是0,表示所有定時器都刪掉了,也就意味著所有屬性的運動都結束了

if(k==0

) }

else

else}},

20);

}}//

獲採樣式的函式

function getstyle(ele,attr)

else

}

JS運動緩衝的封裝函式

之前經常寫運動函式,要寫好多好多,後來想辦法封裝起來。運動緩衝 1 2 物體多屬性同時運動的函式 3obj 運動的物體 4otarget 物件,屬性名為運動的樣式名,屬性值為樣式運動的終點值 5ratio 速度的係數6 7function buffermove obj,otarget,fn,rati...

js封裝乙個websocket

原文 let socket let setintervalwesocketpush null 開啟ws之後傳送心跳 const onopenws 連線失敗重連 const onerrorws ws資料接收統一處理 const onmessagews e 斷開重連 const onclosews 傳送...

使用原生JS封裝乙個動畫函式

最近一直在忙專案,很少有時間回顧之前的知識,今天剛好要做乙個輪播,因為對相容性有一定的要求,使用了各種外掛程式和庫中的輪播,效果都不是很理想,一怒之下,使用原生js封裝了乙個輪播元件,其中重要的功能就是乙個動畫,看了一下以前封裝的函式,千瘡百孔,又進行了重新封裝,先上 有詳細的備註。function...