中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

JS Tween 顏色漸變

有31中緩動(dòng)算法,實(shí)現(xiàn)了顏色的自動(dòng)轉(zhuǎn)換(#f00 #ff0000 rgb(255,0,0)格式到顏色運(yùn)算格式,最后返回#ff0000格式)、px單位的自動(dòng)轉(zhuǎn)換。
調(diào)用接口:
/**
* 對(duì)外接口
* Tween的示例
* @param startProps 開始屬性,單個(gè)屬性或者數(shù)組
* @param endProps 結(jié)束屬性,單個(gè)屬性或者數(shù)組
* @param timeSeconds 運(yùn)動(dòng)消耗時(shí)間,單位秒
* @param animType 動(dòng)作類型,字符串型,內(nèi)部自己轉(zhuǎn)換算子
* @param delay 延遲時(shí)間,多長(zhǎng)時(shí)間后開始運(yùn)動(dòng),單位秒
*/
window.rtween = function(startProps, endProps, timeSeconds, animType, delay)
{
var tw = new Tween();
tw.start(startProps, endProps, timeSeconds, animType, delay);
return tw;
}
示例如下:
http://img.jb51.NET/online/Tween.htm

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
選擇列表里面的緩動(dòng)算法,點(diǎn)前面的按鈕,就會(huì)以想對(duì)的緩動(dòng)算法運(yùn)動(dòng)

源代碼: http://img.jb51.NET/jslib/jquery/rtween.js
核心代碼:
function Tween()
{
this._frame=20;
//
this._animType = linear;
this._delay = 0;
//
this.run = function(){}
this.complete = function(){}
}
//
Tween.prototype.getValue = function(prop)
{
this._valueType = ”;
if(prop.constructor == Array) return prop;
//
if(typeof(prop) == 'string')
{
if(isColor(prop))
{
this._valueType = ‘color';
return c2a(prop);
}
if(prop.split('px').length>1)
{
this._valueType = ‘px';
return [prop.split('px')[0]];
}
}
return [prop];
}
Tween.prototype.setValue = function(prop)
{
if(this._valueType == ‘color')return a2c(prop);
if(this._valueType == ‘px')return prop[0]+'px';
return prop;
}
Tween.prototype.start = function(startProps, endProps, timeSeconds, animType, delay)
{
if(animType != undefined)this._animType = this.animTypes[animType];
if(delay != undefined)this._delay = delay;
//
this._timeSeconds = timeSeconds;
this._startTimer = new Date().getTime() + this._delay * 1000;
//
this._endProps = this.getValue(endProps);
this._startProps = this.getValue(startProps);
this._currentProps = [];
//
var $this = this;
clearInterval(this._runID);
this._runID = setInterval(
function(){$this._run();}
,this._frame);
}
Tween.prototype.stop = function(state)
{
for(var i in this._startProps)
{
if(Number(state)>0)
this._currentProps[i] = this._endProps[i];
else if(Number(state)<0)
this._currentProps[i] = this._startProps[i];
}
this.callListener();
this.complete();
//
clearInterval(this._runID);
}
Tween.prototype.callListener = function()
{
this.run(this.setValue(this._currentProps));
}
Tween.prototype._run = function()
{
if ( new Date().getTime()- this._startTimer< 0) return;
var isEnd = false;
//
for(var i in this._startProps)
{
this._currentProps[i] = this._animType( new Date().getTime()-this._startTimer,Number(this._startProps[i]),Number(this._endProps[i])-Number(this._startProps[i]),this._timeSeconds * 1000);
//
if(this._startTimer + (this._timeSeconds * 1000) <= new Date().getTime())
{
this._currentProps[i] = this._endProps[i];
isEnd = true;
}
}
//
if(isEnd)this.stop();
else this.callListener();
}

JavaScript技術(shù)JS Tween 顏色漸變,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 男女av| 亚洲天天干 | 亚洲欧美日韩在线 | 九九久久精品视频 | 免费久草 | 亚洲欧美一区二区三区1000 | 久久成人一区 | 尤物在线视频 | 亚洲精品www久久久久久广东 | 久久久.com| 亚洲欧洲一区 | 日韩精品在线看 | 久久高清| 高清av在线 | 精品国产乱码久久久久久1区2区 | 亚洲第一在线 | 国产精品片aa在线观看 | 日韩成人 | 激情婷婷成人 | 欧美一区二区三区视频 | 欧美亚洲视频在线观看 | 天天看天天操 | 久久999| 久久久久久亚洲国产精品 | 精彩视频一区二区三区 | 国产在线观 | 最新免费视频 | 日日夜夜精品视频 | 毛片在线免费播放 | 高清国产午夜精品久久久久久 | 婷婷丁香综合网 | 在线免费观看黄视频 | 婷婷在线视频 | 国产精品久久久久久婷婷天堂 | 在线播放亚洲 | 日本午夜精品 | 9999精品视频 | 精品欧美一区二区三区久久久 | 国产三区视频在线观看 | 啪啪精品 | 亚洲三级免费看 |