在切換之前先執(zhí)行Start()函數(shù),進(jìn)行相關(guān)設(shè)置, 主要是設(shè)置I " /> 9765激情中文在线,亚洲精品mv,久久女同性恋中文字幕

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

JavaScript 圖片切換展示效果alibaba拓展版第1/3頁

首先需要一個(gè)容器,設(shè)置它的overflow為hidden,position為relative;
容器里面還要一個(gè)滑動(dòng)對(duì)象,設(shè)置它的position為absolute;
在initialize()函數(shù)里初始化一些屬性。

在切換之前先執(zhí)行Start()函數(shù),進(jìn)行相關(guān)設(shè)置,
主要是設(shè)置Index屬性(索引)和_target屬性(目標(biāo)值):
復(fù)制代碼 代碼如下:
if(this.Index < 0){
this.Index = this._count - 1;
} else if (this.Index >= this._count){ this.Index = 0; }

this._target = -1 * this._parameter * this.Index;

接著就執(zhí)行Move()函數(shù)開始移動(dòng)了,原理通過設(shè)置滑動(dòng)對(duì)象的top(或left)來做出移動(dòng)的效果,
而減速的效果就需要執(zhí)行GetStep()函數(shù)來獲取步長:
復(fù)制代碼 代碼如下:
var iStep = (iTarget - iNow) / this.Step;用目標(biāo)值減當(dāng)前值再除以一個(gè)參數(shù),得到步長,

這樣取得的步長在當(dāng)前值越接近目標(biāo)值時(shí)會(huì)越來越小,也做成了減速的效果,
然后在top(或left)的設(shè)置中加上這個(gè)步長,并設(shè)置定時(shí)器繼續(xù)Move(),直到到達(dá)目標(biāo)值:
復(fù)制代碼 代碼如下:
this._slider.style[style] = (iNow + iStep) + "px";
this._timer = setTimeout(function(){ oThis.Move(); }, this.Time);

下面例子里的容器結(jié)構(gòu):
復(fù)制代碼 代碼如下:
<div class="container" id="idTransformView">
<ul class="slider" id="idSlider">
<li><img src="http://shundebk.cn/temp/1.jpg"/></li>
<li><img src="http://shundebk.cn/temp/2.jpg"/></li>
<li><img src="http://shundebk.cn/temp/3.gif"/></li>
</ul>
<ul class="num" id="idNum">
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</div>

要美觀的話需要css設(shè)置一下: 
復(fù)制代碼 代碼如下:
.container, .container *{margin:0; padding:0;}

.container{width:408px; height:168px; overflow:hidden;}

.slider{position:absolute;}
.slider li{ list-style:none;display:inline;}
.slider img{ width:408px; height:168px; display:block;}

.slider2{width:2000px;}
.slider2 li{float:left;}

.num{ position:absolute; right:5px; bottom:5px;}
.num li{
float: left;
color: #FF7300;
text-align: center;
line-height: 16px;
width: 16px;
height: 16px;
font-family: Arial;
font-size: 12px;
cursor: pointer;
overflow: hidden;
margin: 3px 1px;
border: 1px solid #FF7300;
background-color: #fff;
}
.num li.on{
color: #fff;
line-height: 21px;
width: 21px;
height: 21px;
font-size: 16px;
margin: 0 1px;
border: 0;
background-color: #FF7300;
font-weight: bold;
}

樣式的設(shè)置跟程序也有一定關(guān)系,例如寬和高,這里就不說明了。
接著就可以實(shí)例化了: 
復(fù)制代碼 代碼如下:
var tv = new TransformView ("idTransformView", "idSlider", 168, 3, {
onStart : function(){ Each(objs, function(o, i) { o.className = tv.Index == i ? "on" : ""; }) }//按鈕樣式
});

這里主要有4個(gè)參數(shù),分別是容器對(duì)象、滑動(dòng)對(duì)象、切換參數(shù)和切換數(shù)量。
當(dāng)程序是上下切換時(shí),切換參數(shù)切換的高度,當(dāng)左右切換時(shí),是切換的寬度。
切換數(shù)量就是有多少個(gè)切換對(duì)象了,例如上面的例子就是3個(gè)。
最后的參數(shù)是一些設(shè)置:
屬性: 默認(rèn)值//說明
Up: true,//是否向上(否則向左)
Step: 5,//滑動(dòng)變化率
Time: 10,//滑動(dòng)延時(shí)
Auto: true,//是否自動(dòng)轉(zhuǎn)換
Pause: 2000,//停頓時(shí)間(Auto為true時(shí)有效)
onStart: function(){},//開始轉(zhuǎn)換時(shí)執(zhí)行
onFinish: function(){}//完成轉(zhuǎn)換時(shí)執(zhí)行
例子里設(shè)置了onStart屬性,作用是在切換開始時(shí),設(shè)置按鈕的樣式

JavaScript技術(shù)JavaScript 圖片切換展示效果alibaba拓展版第1/3頁,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 兰坪| 乐东| 南部县| 丹阳市| 灌南县| 梁山县| 姚安县| 和林格尔县| 庄浪县| 斗六市| 潮州市| 永新县| 景宁| 项城市| 平顶山市| 睢宁县| 宜章县| 黄大仙区| 大冶市| 吴堡县| 彝良县| 海淀区| 大安市| 顺平县| 兖州市| 兴安县| 哈密市| 子洲县| 鄱阳县| 茌平县| 甘孜| 武冈市| 西乌| 益阳市| 江达县| 溧水县| 乡城县| 申扎县| 霍林郭勒市| 两当县| 曲周县|