輪播元件iceSlider

2021-09-06 13:40:12 字數 3077 閱讀 8471

~~~~作為編寫元件的乙個參考吧,在js輸出元件樣式的問題上 **一下 盡量簡化元件的呼叫

function

iceslider(element,options) ,,]

});});

原生js呼叫示例:

iceslider('banner',,,],

up:false

});

*///

輸出元件相關的樣式 首先檢測瀏覽器

var _ie = (function

())();

//~~ 判斷$!==jquery ~~可以基於prototype 或 原生js

if(window.$)}}

else

}/*--------- 獲取引數 ---------

*/var h,w; //

切換廣告的高度寬度,預設為200

var count; //

切換廣告的資料,根據資料傳入的數量自動設定

varad;

varautotime;

if(options!=undefined)

autotime=autotime||1000;

h=h||200;

w=options.w || 200;

if(!window.sliderstylestr)'+(!options.up ?'.iceslider .iceslider li':'') +

'.iceslider li a'+

'.iceslider li a img'+

'.rotatornumber'+

'.rotatornumber li'+

'.rotatornumber .on';

if(_ie)

else

}/*----------- 生成html --------

*/var li="";

var li2="";

var alt="";

for(var i=0;i)

var html='

'; $(element).innerhtml=html;

var _target=ad[0].target!='_blank'?'_self':'_blank';

//初始化標題

$('bannertitle').innerhtml=''+ad[0].alt+'';

/*----------- 生成html end --------

*/var element=$(element);

var viewport = element.getelementsbytagname('div')[0]; //

頂層容器 視口

viewport.style.height = h +'px';

viewport.style.width = w +'px';

var count=$('iceslider').getelementsbytagname('li').length; //

內容頁數

var a=$('iceslider').getelementsbytagname('a'); //

包裹的a

function each(list, fun)

};//var objs = $(element).select('ul')[1].select("li");

var objs = $(element).getelementsbytagname('ul')[1].getelementsbytagname("li"); //

切換的數字

//例項化輪播元件

var tv = new

transformview(

viewport,

$(element).getelementsbytagname('ul')[0],

h,count,

) },

pause:autotime});

tv.start();

//each(objs,

function(o, i);

o.onmouseout = function()

});}

//lihuoslider end

var icesliderclass = ;

建構函式的引數直接傳入初始化方法

} }

}object.extend = function(destination, source)

return

destination;

}var transformview = icesliderclass.create(); //

create方法返回建構函式

transformview.prototype =,

//設定預設屬性

setoptions:

function

(options) ,//

開始轉換時執行

onfinish: function(){}//

完成轉換時執行

}; object.extend(

this.options, options ||{});

},//開始切換設定

start: function

()

else

if (this.index >= this._count)

this._target = -1 * this._psize * this

.index;

this

.onstart();

this

.move();

},//移動

move: function

() , this

.time);

} else ,

this

.pause ); }}

},//獲取步長

getstep: function

(itarget, inow) ,

//停止

stop: function

(itarget, inow)

};

漸變輪播元件

js元件 fn.extend on mouseout function 下一張 next.click function 下一張呼叫函式 function next ul.find li eq eq stop animate 500 ul.find li eq eq siblings stop ani...

mui slide(輪播元件)

輪播元件是mui提供的乙個核心元件,在該核心元件基礎上,衍生出了輪播 可拖動式 可拖動式選項卡 左右滑動9宮格等元件,這些元件有較多共同點。dom構造 js部分 顯示圓點 輪播迴圈 若要支援迴圈,則需要在.mui slider group節點上增加.mui slider loop類,同時需要重複增加...

基於vue實現swipe輪播元件

輪播是前端專案必有項,當前有很多效果很酷炫的輪播外掛程式,例如swiper。但是當專案中的輪播只需要乙個很簡單的輪播樣式,比如這樣的 我們引用這樣乙個110k的大外掛程式,就大材小用了。再安利一下,swiper2.x和swiper3.x對移動和pc端支援情況如下圖 噹噹噹噹 我們今天的主角登場了,t...