微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery轮播图实例详解

本文实例为大家分享了jQuery轮播图实例的具体代码,供大家参考,具体内容如下

1、html+css+js代码

rush:xhtml;">

一个元素还向前移,就让最后一个元素是这个元素
list.css('left',-conwidthlen);
}
if (left < (-conwidth
len)) {//如果是最后一个元素还向后移,就让第一个元素是这个元素
list.css('left',-conwidth);
}
});
}

function showbutton(){//通过操作css来将显示图片代表的下方原点变大,其余变小
buttons.eq(index-1).addClass('on').siblings().removeClass('on');
}

function play(){
timer = setTimeout(function(){
next.trigger('click');//trigger()方法触发被选元素的指定事件类型。
play();
},interval);
}
function stop(){
clearTimeout(timer);
}

next.bind('click',function(){
if (list.is(':animated')) {
return;
}
if (index == 5) {
index = 1;
}
else{
index++;
}
animate(-conwidth);
showbutton();
});

prev.bind('click',function(){
if (list.is(':animated')) {
return;
}
if (index == 1) {
index = 5;
}
else{
index--;
}
animate(conwidth);
showbutton();
});

buttons.each(function(){
$(this).bind('click',function(){
if (list.is(':animated') || $(this).attr('class')=='on') {
return;
}
var myindex = parseInt($(this).attr('index'));
var offset = -conwidth*(myindex - index);

animate(offset);
index = myindex;
showbutton();

})
});

container.hover(stop,play);//鼠标悬停时执行stop()函数,移开时执行play()

play();

});

function setwidth(){//设置container的宽度以及里面元素list和list中img的宽度

container[0].style.width = conwidth +'px' ;
list[0].style.width = num*conwidth +'px';
list[0].style.left = '-'+conwidth +'px';
for (var i = 0; i < listimg.length; i++) {
listimg[i].style.width = conwidth + 'px';
}
}

2、实现思路

轮播图的功能可分为:自动循环播放,点击左边按钮显示前面图片,点击后边显示后面图片,点击下方的小圆点实现跳转播放。

1.自动播放功能:设置一个定时器,每隔一个周期的时间,触发一次点击右边按钮的函数功能。 2.点击左边按钮显示前面图片:首先我们应该了解到轮播图的原理。图解

大盒子是container,小盒子是list,list里面有很多图片,没有间隔的排列在一行,用绝对定位来操纵每次可以看到的图片,也就是定位在container里面的是可见部分。当点击左边的按钮时,前面的图片右移,相当于绝对定位中的left值加一个图片的宽度。

3.点击右边按钮显示后面图片:原理和左边的相同,相当于图片左移,让后面的图片显示出来。 4.点击下方的小圆点实现跳转播放:此时页面是第二个图片,要跳转到第五个,相当于点击了三次右边的按钮,也相当于图片左移三个图片的宽度。

3、需要掌握的知识点:

css:

绝对定位

js+jq:

rush:js;"> document.documentElement.clientWidth; obj.animate(); obj.css(); obj.eq() obj.addClass(); obj.siblings(); obj.removeClass(); setTimeout(); clearTimeout(); obj.trigger(); obj.attr(); obj.bind();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐