Jquery 輪播圖制作

輪播圖制作主要思路:實現(xiàn)輪播圖滾動的效果,主要是使用animate()函數(shù)來實現(xiàn)這個過渡的動畫效果。當向左點擊時,畫面向右移動,應該把最后面的這個元素放在最前面,然后設置這個元素的父元素向左移動n個元素寬度,此時使用animate來恢復其距離原來的距離,已達到過渡的動畫效果。向右點擊則相反。

html:一個div包含一個ul,ul里面的li元素設置浮動,橫向展開。

js代碼模塊:

/*

*RollBox: 包含ul的直系父組件;Left(Right): 向左或向右點擊的標簽類或ID;Step:切換的個數(shù);Auto: 是否自動切換

*/

function acrossSwitch (RollBox, Left, Right, Step, Auto) {

var ThisStep = 1;? ? ? //切換個數(shù)

var ThisAuto = false;? //是否自動切換

var ThisSpeed = 500;? //播放一次動作速度

var PlayTime = 5000;? ? //自動切換速度

var RollUL = $(RollBox).find(">ul");

var RollBoxLi = RollUL.find(">li");

var LiWidth = RollBoxLi.outerWidth(true);

var LiLength = RollBoxLi.length;

RollUL.width(LiWidth * LiLength);

if (arguments[3]) ThisStep = Step;

if (arguments[4]) ThisAuto = Auto;

if (arguments[5]) ThisSpeed = Speed;

var MoveSize = LiWidth * ThisStep;

/*左右切換*/

function LeftRoll() {

for (i = 0; i < Step; i++) {

RollUL.find(">li:last").prependTo(RollUL);

}

RollUL.css({ "margin-left": -MoveSize });

RollUL.animate({ "margin-left": "0px" }, ThisSpeed);

}

function RightRoll() {

RollUL.animate({ "margin-left": -MoveSize }, ThisSpeed, function () {

for (i = 0; i < Step; i++) {

RollUL.find(">li:first").appendTo(RollUL);

}

RollUL.css({ "margin-left": "0px" });

});

}

$(document).on('click', '.channel-set', function(){

LeftRoll();

});

$(document).on('click', '.channel-ui', function(){

RightRoll();

});

$(Right).click(function () {

RightRoll();

});

$(Left).click(function () {

LeftRoll();

});

if (ThisAuto) {

var AutoPlay = setInterval(function () { RightRoll() }, PlayTime);

$(Right).hover(function () {

clearInterval(AutoPlay);

}, function () {

AutoPlay = setInterval(function () { RightRoll() }, PlayTime);

});

$(Left).hover(function () {

clearInterval(AutoPlay);

}, function () {

AutoPlay = setInterval(function () { RightRoll() }, PlayTime);

});

}

}

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 1. tab列表折疊效果 html: 能源系統(tǒng)事業(yè)部 崗位名稱: 工作地點 崗位名...
    lilyping閱讀 2,013評論 0 1
  • jQuery基礎 什么是JQ?一個優(yōu)秀的JS庫,大型開發(fā)必備JQ的好處?一簡化JS的復雜操作二不再需要關心兼容性三...
    幺七閱讀 1,006評論 0 2
  • 2017.07.14No104 0715-0745用時30分鐘字數(shù)890 躺在一個獨特的分割線上,一邊是遠去的完整...
    何不可閱讀 493評論 0 3
  • 1.登陸阿里云打開以下界面 2.新增云盾服務 3.補全信息 按提示填寫信息即可 4.查看審批狀態(tài) 5.修改服務器n...
    奮斗_登閱讀 1,035評論 0 2
  • 文:念伊伊 這幾天我的朋友圈炸了鍋,原本老實憨厚的J男失聯(lián)了,連帶著他的妻女一起消失在我們的視線里。 據(jù)說J男找不...
    念伊伊閱讀 283評論 0 5

友情鏈接更多精彩內(nèi)容