$(function() {
var timer = null;
var str = '';
var speed = 500;
var wrapElWidth = $(".data_author").width(); // 一屏的宽度
var totalLen = $('.data_authorCon > div').length; // 总屏数
var currentIndex = 0;
$('.data_authorCon').width(wrapElWidth * totalLen);
$('.data_authorCon > div').each(function(i) {
str += '
'+ (i+1) +''
});
$('ul.data_numList').html(str);
$('ul.data_numList li:first').addClass('data_on');
start();
// 外围元素区块 鼠标以上停止滚动 移出继续滚动
$(".data_author").hover(function() {
stop();
},function(){
start();
});
// 上一屏 下一屏
$('.data_next').click(function() {
slide(1)
});
$('.data_prev').click(function() {
slide( - 1)
});
// 各屏的当前点
$('.data_numList li').click(function() {
currentIndex = $(this).index();
fade(currentIndex);
addLight($('.data_numList li').eq(currentIndex), 'data_on')
});
// 开始函数
function start() {
t = setInterval(function() {
slide(1);
},3000);
}
function stop() {
if(t){clearInterval(t);}
}
// 滚动函数
function slide(j) {
if ($('.data_authorCon').is(':animated') == false) {
currentIndex += j;
if (currentIndex != -1 && currentIndex != totalLen) {
$('.data_authorCon').animate({
'marginLeft': -currentIndex * wrapElWidth + 'px'
},speed);
} else if (currentIndex == -1) {
currentIndex = totalLen - 1;
$(".data_authorCon").css({
"marginLeft": -(wrapElWidth * (currentIndex - 1)) + "px"
});
$(".data_authorCon").animate({
"marginLeft": -(wrapElWidth * currentIndex) + "px"
},speed);
} else if (currentIndex == totalLen) {
currentIndex = 0;
$(".data_authorCon").css({
"marginLeft": -wrapElWidth + "px"
});
$(".data_authorCon").animate({
"marginLeft": 0 + "px"
},speed);
}
addLight($('.data_numList li').eq(currentIndex), 'data_on')
}
}
// 给当前屏的点高亮
function addLight(ele, currentClass) {
ele = $(ele) ? $(ele) : ele;
ele.addClass(currentClass).siblings().removeClass(currentClass)
}
// 淡入淡出函数
function fade(i) {
if ($('.data_authorCon').css('marginLeft') != -i * wrapElWidth + 'px') {
$('.data_authorCon').css('marginLeft', -i * wrapElWidth + 'px');
$('.data_authorCon').fadeOut(0,function(){
$('.data_authorCon').fadeIn(500);
})
}
}
});