日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > web前端 > jscript > JavaScript 圖片可控制的切換效果

JavaScript 圖片可控制的切換效果

來源:程序員人生   發(fā)布時間:2014-01-08 14:06:04 閱讀次數(shù):3568次

  網(wǎng)(LieHuo.Net)教程 看到alibaba的一個圖片切換效果,感覺不錯,想拿來用用。但代碼一大堆的,看著昏,還是自己來吧。 由于有了做圖片滑動展示效果的經(jīng)驗,做這個就容易得多了。 自寫了Tween緩動之后就很想重新寫過這個效果,近來有點時間,終于可以動手了。除了改成Tween緩動,也改進了程序算法,不過原理還是一樣的。

 先來看一下演示:




     

 程序說明

 原理就是通過不斷設(shè)置滑動對象的left(水平切換)和top(垂直切換)來實現(xiàn)圖片切換的動態(tài)效果。

 首先需要一個容器,程序會自動設(shè)置容器overflow為hidden,如果不是相對或絕對定位會同時設(shè)置position為relative,
滑動對象會設(shè)置為絕對定位:

以下為引用的內(nèi)容:
var p = CurrentStyle(this._container).position;
p == "relative" || p == "absolute" || (this._container.style.position = "relative");
this._container.style.overflow = "hidden";
this._slider.style.position = "absolute";

 如果沒有設(shè)置Change切換參數(shù)屬性,會自動根據(jù)滑動對象獲取:

以下為引用的內(nèi)容:
this.Change = this.options.Change ? this.options.Change :
this._slider[bVertical ? "offsetHeight" : "offsetWidth"] / this._count;

 執(zhí)行Run方法就會開始進入切換,其中有一個可選參數(shù)用來重新設(shè)置要切換的圖片索引:

以下為引用的內(nèi)容:
index == undefined && (index = this.Index);
index < 0 && (index = this._count - 1) || index >= this._count && (index = 0);
== undefined && (index = this.Index);
index < 0 && (index = this._count - 1) || index >= this._count && (index = 0);

 之后就到設(shè)置使用tween緩動時需要的參數(shù)了,
 包括_target(目標(biāo)值)、_t(時間)、_b(初始值)和_c(變化量):

以下為引用的內(nèi)容:
this._target = -Math.abs(this.Change) * (this.Index = index);
this._t = 0;
this._b = parseInt(CurrentStyle(this._slider)[this.options.Vertical ? "top" : "left"]);
this._c = this._target - this._b;

 還有Duration(持續(xù)時間)是自定義屬性。

 參數(shù)設(shè)置好后就執(zhí)行Move程序開始移動了。里面很簡單,首先判斷_c是否有值(等于0表示不需要移動)和_t是否到達Duration,未滿足條件就繼續(xù)移動,否則直接移動到目標(biāo)值并進行下一次切換:

以下為引用的內(nèi)容:
if (this._c && this._t < this.Duration) {
    this.MoveTo(Math.round(this.Tween(this._t++, this._b, this._c, this.Duration)));
    this._timer = setTimeout(Bind(this, this.Move), this.Time);
}else{
    this.MoveTo(this._target);
    this.Auto && (this._timer = setTimeout(Bind(this, this.Next), this.Pause));
}

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 免费精品 | 国产hsck在线亚洲 | 国产视频色 | 美女网站视频黄 | 青青草亚洲| 精精国产xxxx视频在线野外 | 久久精品免费观看 | 国产91在线 | 欧美 | 日本中文字幕在线观看 | 91一区二区三区在线观看 | 国产一区中文字幕 | 国产精品嫩草影视 | 国产不卡视频在线 | 四虎四虎院5151hhcom | 国产精品中文字幕在线播放 | 成年人免费观看 | 精品国产一区二区三区不卡蜜臂 | 成人性生交大片免费看中文网站 | 综合中文字幕 | 亚洲一区二区三区在线播放 | 精品一区在线播放 | 国产99久久精品一区二区永久免费 | 成人精品在线播放 | 亚洲 中文 欧美 日韩 在线观看 | 精品久久视频 | 99色婷婷| 91久久综合 | 成人性生交大片免费看在线播放 | 精品久久久久一区二区 | 国产精品久久久久久久久久久久午夜片 | 日韩欧美一区二区三区 | 天天操天天射天天爽 | 日韩一级片在线观看 | 国产精品视频99 | 日韩成人免费 | 国产99久久 | 久久99国产精一区二区三区 | 超黄网站在线观看 | 久久加久久 | 麻豆国产一区二区三区四区 | 久久综合久久综合久久 |