基于jQuery的淡入淡出可自動(dòng)切換的幻燈插件打包下載
其實(shí)就是一個(gè)幻燈效果,考慮到使用方便,就封裝成一個(gè)插件了.
插件特點(diǎn)
1. 參數(shù)高度自定義;
2. 可重復(fù)調(diào)用且與不影響;
3. 插件文件小,壓縮后僅1.04k,開(kāi)發(fā)版3.29k.
演示及下載
點(diǎn)此查看DEMO
點(diǎn)此下載插件
使用方法
1. 引入jQuery庫(kù)文件及jQuery.iFadeSlide.pack.js插件文件(若頁(yè)面有其他js文件,可與之合并以減小http請(qǐng)求),引入位置自定義;
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script src="js/jquery.iFadeSldie.pack.js"></script>
樣式文件無(wú)須引入,若使用DEMO中的結(jié)構(gòu),可直接將樣式合并于項(xiàng)目頁(yè)面中.建議樣式自定義.
2. 在頁(yè)面中調(diào)用插件并傳入切換元素的參數(shù), 若為空或未傳入的參數(shù),均按插件中的默認(rèn)參數(shù)執(zhí)行.例如如下代碼是DEMO演示中的三組幻燈切換調(diào)用:
$(function(){
//SAMPLE-A調(diào)用---未傳入任何參數(shù),調(diào)用默認(rèn)參數(shù)
$('div#slide').iFadeSlide();
//SAMPLE-B調(diào)用---傳入新的參數(shù),將覆蓋原有參數(shù),未傳入的使用默認(rèn)值
$('div#slide_b').iFadeSlide({
field: $('div#slide_b a'),
icocon:$('div.ico_b'),
hoverCls: 'high_b',
curIndex: 2, //索引值0起始,故此處設(shè)置為第3項(xiàng)高亮
interval: 2000
});
//SAMPLE-C調(diào)用---傳入新的參數(shù),將覆蓋原有參數(shù),未傳入的使用默認(rèn)值
$('div#slide_c').iFadeSlide({
field: $('div#slide_c img'),
icocon: $('div.ico_c'),
outTime:100,
inTime: 200
});
});
注意,調(diào)用插件部分須置入插件文件引用后面.
核心代碼
;(function($){
$.fn.extend({
iFadeSlide: function(options){
//插件參數(shù)初始化
var iset={
field:$('div#slide img'), //切換元素集合
icocon:$('div.ico'), //索引容器
hoverCls:'high', //切換至當(dāng)前索引高亮顯示樣式
curIndex:0, //默認(rèn)高亮顯示的索引值,索引值為0起始
outTime:200, //元素淡出時(shí)間(ms)
inTime:300, //元素淡入時(shí)間(ms)
interval:3000 //元素切換間隔時(shí)間(ms)
};
options=options || {};
$.extend(iset,options); //合并參數(shù)對(duì)象.若options傳入有新值則覆蓋iset中對(duì)應(yīng)值,否則使用默認(rèn)值.
//根據(jù)切換元素量生成對(duì)應(yīng)的索引值列表并插入到切換區(qū)域中
var ulcon = "<ul>";
iset.field.each(function(i){
ulcon = ulcon + '<li>' + (i + 1) + '</li>';
});
ulcon += '</ul>';
iset.icocon.append(ulcon);
var ico = iset.icocon.find('li'); //索引列表集合
var size = iset.field.size(); //切換元素量
var index = 0; //初始索引值
var clearFun=null;
//淡出淡入函數(shù)
var fadeFun = function(obj){
index = ico.index(obj); //取當(dāng)前索引值
//淡出當(dāng)前可見(jiàn)元素,并通過(guò)索引值找到要淡入的元素
iset.field.filter(':visible').fadeOut(iset.outTime, function(){
iset.field.eq(index).fadeIn(iset.inTime);
});
//為當(dāng)前索引添加高亮樣式并移除同級(jí)元素中的高亮樣式
$(obj).addClass(iset.hoverCls).siblings().removeClass(iset.hoverCls);
};
//切換函數(shù)
var changeFun = function(){
index++; //累積索引值
if (index == size){index = 0}; //當(dāng)索引值等于切換元素量時(shí),初始化為0
ico.eq(index).trigger('mouseleave'); //為當(dāng)前的索引模擬鼠標(biāo)劃出元素區(qū)事件
};
//自動(dòng)切換函數(shù)
var scrollFun = function(){
clearFun = setInterval(function(){
changeFun()
}, iset.interval);
};
//停止自動(dòng)切換函數(shù)
var stopFun = function(){
clearInterval(clearFun);
};
scrollFun(); //初始自動(dòng)切換
//索引區(qū)域鼠標(biāo)劃入停止自動(dòng)切換并切換元素至當(dāng)前索引,鼠標(biāo)劃出初始化索引至當(dāng)前值(否則鼠標(biāo)劃出切換會(huì)亂)
ico.hover(function(){
stopFun();
fadeFun(this);
}, function(){
fadeFun(this);
}).eq(iset.curIndex).mouseleave(); //初始高亮顯示的索引值
//切換區(qū)域鼠標(biāo)劃入停止自動(dòng)切換,劃出繼續(xù)自動(dòng)
iset.field.hover(function(){
stopFun();
}, function(){
scrollFun();
});
}
});
})(jQuery);
- 基于jQuery的淡入淡出可自動(dòng)切換的幻燈插件
- js、jquery圖片動(dòng)畫(huà)、動(dòng)態(tài)切換示例代碼
- jQuery插件slick實(shí)現(xiàn)響應(yīng)式移動(dòng)端幻燈片圖片切換特效
- jquery實(shí)現(xiàn)圖片左右切換的方法
- jQuery插件Slider Revolution實(shí)現(xiàn)響應(yīng)動(dòng)畫(huà)滑動(dòng)圖片切換效果
- jquery實(shí)現(xiàn)兩個(gè)圖片漸變切換效果的方法
- jQuery實(shí)現(xiàn)圖片漸入漸出切換展示效果
- jQuery代碼實(shí)現(xiàn)圖片墻自動(dòng)+手動(dòng)淡入淡出切換效果
相關(guān)文章
淺談jQuery綁定事件會(huì)疊加的解決方法和心得總結(jié)
下面小編就為大家?guī)?lái)一篇淺談jQuery綁定事件會(huì)疊加的解決方法和心得總結(jié)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10
關(guān)于jquery性能最佳實(shí)踐的討論,與求教
很久沒(méi)寫(xiě)東西,年前的項(xiàng)目也接近尾聲,最近在網(wǎng)上看到一篇文章是 阮一峰 的 《jQuery最佳實(shí)踐》 鏈接在文末2012-03-03
jQuery模擬物體自由落體運(yùn)動(dòng)(附演示與demo源碼下載)
這篇文章主要介紹了jQuery模擬物體自由落體運(yùn)動(dòng)的方法,并附帶了效果演示與demo源碼下載,可真是模擬出球體自由落體運(yùn)動(dòng)及動(dòng)能損耗的運(yùn)動(dòng)過(guò)程,需要的朋友可以參考下2016-01-01
jQuery 獲取屏幕高度、寬度的簡(jiǎn)單實(shí)現(xiàn)案例
下面小編就為大家?guī)?lái)一篇jQuery 獲取屏幕高度、寬度的簡(jiǎn)單實(shí)現(xiàn)案例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05
解決JQuery的ajax函數(shù)執(zhí)行失敗alert函數(shù)彈框一閃而過(guò)問(wèn)題
這篇文章主要介紹了解決JQuery的ajax函數(shù)執(zhí)行失敗alert函數(shù)彈框一閃而過(guò)問(wèn)題,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-04-04
javascript jQuery $.post $.ajax用法
這是一個(gè)簡(jiǎn)單的 POST 請(qǐng)求功能以取代復(fù)雜 $.ajax 。請(qǐng)求成功時(shí)可調(diào)用回調(diào)函數(shù)。如果需要在出錯(cuò)時(shí)執(zhí)行函數(shù),請(qǐng)使用 $.ajax。2008-07-07
基于jQuery實(shí)現(xiàn)淡入淡出效果輪播圖
這篇文章主要為大家詳細(xì)介紹了基于jQuery淡入淡出效果輪播圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08
jQuery左側(cè)大圖右側(cè)小圖焦點(diǎn)圖幻燈切換代碼分享
這篇文章主要介紹了jQuery左側(cè)大圖右側(cè)小圖焦點(diǎn)圖幻燈切換特效,帶有縮略圖的焦點(diǎn)圖切換代碼,簡(jiǎn)單、時(shí)尚、大方,有需要的小伙伴可以參考下。2015-08-08
jQuery實(shí)現(xiàn)ajax調(diào)用WCF服務(wù)的方法(附帶demo下載)
這篇文章主要介紹了jQuery實(shí)現(xiàn)ajax調(diào)用WCF服務(wù)的方法,以完整實(shí)例形式分析了jQuery的ajax前端調(diào)用及后臺(tái)交互調(diào)用WCF服務(wù)的相關(guān)技巧,并附帶完整實(shí)例共讀者下載,需要的朋友可以參考下2015-12-12

