2020-12-27 09:43:45 +08:00

123 lines
2.5 KiB
Java

$(function() {
var $banner = $('.banner');
var $banner_ul = $('.banner-img');
var $btn = $('.banner-btn');
var $btn_a = $btn.find('a')
var v_width = $banner.width();
var page = 1;
var timer = null;
var time = 3000;
var btnClass = null;
var page_img = $banner_ul.find('li img');
var page_count = $banner_ul.find('li').length;
var load = $banner.find('.banner-load');
$banner_ul.width(page_count * v_width);
function move(obj, classname) {
if (!$banner_ul.is(':animated')) {
loading_start();
if (classname == 'prevBtn') {
if (page == 1) {
$banner_ul.animate({
left: -v_width * (page_count - 1)
});
page = page_count;
cirMove();
} else {
$banner_ul.animate({
left: '+=' + v_width
}, "slow");
page--;
cirMove();
}
} else {
if (page == page_count) {
$banner_ul.animate({
left: 0
});
page = 1;
cirMove();
} else {
$banner_ul.animate({
left: '-=' + v_width
}, "slow");
page++;
cirMove();
}
}
}
}(function loading_reset() {
load.css({
"height": "3px",
"position": "absolute",
"left": "0",
"bottom": "0",
"background": "#FF4939",
"z-index": "10"
});
loading_start();
})();
function loading_start() {
load.animate({
"width": "100%"
}, time).animate({
"width": 0
}, 0);
}
function loading_stop() {
load.stop(true, true).animate({
"width": 0
}, 0)
}
function cirMove() {
$('.banner-nav li').eq(page - 1).addClass('selected').siblings().removeClass('selected');
}
$banner.mouseover(function() {
$btn.css({
'display': 'block'
});
clearInterval(timer);
loading_stop();
}).mouseout(function() {
$btn.css({
'display': 'none'
});
loading_start();
clearInterval(timer);
timer = setInterval(move, time);
}).trigger("mouseout");
$btn_a.mouseover(function() {
$(this).animate({
opacity: 1
}, 'fast');
$btn.css({
'display': 'block'
});
return false;
}).mouseleave(function() {
$(this).animate({
opacity: 0.3
}, 'fast');
$btn.css({
'display': 'none'
});
return false;
}).click(function() {
btnClass = this.className;
loading_stop();
clearInterval(timer);
timer = setInterval(move, time);
move($(this), this.className);
});
$('.banner-nav li').live('click', function() {
var index = $('.banner-nav li').index(this);
$banner_ul.animate({
left: -v_width * index
}, 'slow');
page = index + 1;
cirMove();
});
});