Слайдер
by satantx
HTML
<div class='viewport'>
<ul class='slidewrapper' data-current=0>
<li class='slide'>
Slide 1
</li>
<li class='slide second'>
Slide 2
</li>
<li class='slide third'>
Slide 3
</li>
</ul>
</div>
CSS
.viewport{
width: 300px;
height: 100px;
overflow: hidden;
position: relative;
}
.slidewrapper{
position: absolute;
left: 0;
top: 0;
height: 100px;
margin: 0;
padding: 0;
}
.slide{
width: 300px;
height: 100px;
float: left;
list-style: none;
margin: 0;
padding: 0;
background: #ff0000;
}
.second{
background: #00ff00;
}
.third{
background: #0000ff;
}
JavaScript
var slideWidth=300;
var sliderTimer;
$(function(){
$('.slidewrapper').width($('.slidewrapper').children().size()*slideWidth);
sliderTimer=setInterval(nextSlide,1000);
$('.viewport').hover(function(){
clearInterval(sliderTimer);
},function(){
sliderTimer=setInterval(nextSlide,1000);
});
});
function nextSlide(){
var currentSlide=parseInt($('.slidewrapper').data('current'));
currentSlide++;
if(currentSlide>=$('.slidewrapper').children().size())
{
currentSlide=0;
}
$('.slidewrapper').animate({left: -currentSlide*slideWidth},300).data('current',currentSlide);
}