140 lines
3.6 KiB
JavaScript
Executable File
140 lines
3.6 KiB
JavaScript
Executable File
var slider;
|
|
|
|
$(function() {
|
|
var slideInterval = 0;
|
|
|
|
slider = new ItfSlider();
|
|
$('#arrowLeft').click(function() {
|
|
slider.moveRight(230, 150);
|
|
});
|
|
|
|
$('#arrowRight').click(function() {
|
|
slider.moveLeft(230, 150);
|
|
});
|
|
|
|
|
|
$('#arrowLeft').mouseover(function() {
|
|
slider.moveRight(230, 1500);
|
|
slideInterval = setInterval(function() {
|
|
slider.moveRight(230, 1500);
|
|
}, 1500);
|
|
});
|
|
|
|
$('#arrowLeft').mouseout(function() {
|
|
clearInterval(slideInterval);
|
|
slider.stop();
|
|
});
|
|
|
|
$('#arrowRight').mouseover(function() {
|
|
slider.moveLeft(230, 1500);
|
|
slideInterval = setInterval(function() {
|
|
slider.moveLeft(230, 1500);
|
|
}, 1500);
|
|
});
|
|
|
|
$('#arrowRight').mouseout(function() {
|
|
clearInterval(slideInterval);
|
|
slider.stop();
|
|
});
|
|
|
|
$('#sliderTabs .tab').click(function() {
|
|
var link = $(this).find(".moreTab").attr("href");
|
|
location.href = link;
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
var ItfSlider = function(o) {
|
|
var opts = $.extend({
|
|
'jq': '#slider',
|
|
'ul': '#sliderTabs',
|
|
'li': '.tab',
|
|
'width': 960,
|
|
'liWidth': 230,
|
|
'leftArr': '#arrowLeft',
|
|
'rightArr': '#arrowRight'
|
|
}, o);
|
|
this.jq = $(opts.jq);
|
|
this.ul = $(opts.ul);
|
|
this.lis = this.ul.find(opts.li);
|
|
this.leftArr = $(opts.leftArr);
|
|
this.rightArr = $(opts.rightArr);
|
|
this.width = opts.width;
|
|
this.liWidth = opts.liWidth;
|
|
this.contentWidth = this.liWidth * this.lis.length;
|
|
this.maxLeft = 0 - (this.contentWidth - this.width + 70);
|
|
this.getLeft = function() {
|
|
return parseInt(this.ul.css("left").replace("px", ""));
|
|
};
|
|
this.positionArrow = function() {
|
|
var arrLeft = (0 - this.getLeft()) + (this.contentWidth - 10);
|
|
console.log(arrLeft);
|
|
this.rightArr.animate({'left': arrLeft + "px"});
|
|
};
|
|
this.stop = function() {
|
|
this.ul.stop();
|
|
};
|
|
};
|
|
|
|
ItfSlider.prototype.moveLeft = function(distance, speed) {
|
|
if (typeof(distance) == 'undefined') {
|
|
distance = this.liWidth;
|
|
}
|
|
this.ul.stop();
|
|
var left = this.getLeft();
|
|
if (left > this.maxLeft) {
|
|
var newLeft = left - distance;
|
|
if (newLeft < this.maxLeft) { newLeft = this.maxLeft; }
|
|
this.ul.animate({"left": newLeft + "px"}, speed);
|
|
// this.positionArrow();
|
|
}
|
|
};
|
|
|
|
ItfSlider.prototype.moveRight = function(distance, speed) {
|
|
if (typeof(distance) == 'undefined') {
|
|
distance = this.liWidth;
|
|
}
|
|
this.ul.stop();
|
|
var left = this.getLeft();
|
|
if (left <= 0) {
|
|
var newLeft = left + distance;
|
|
if (newLeft > 0) { newLeft = 0; }
|
|
this.ul.animate({'left': newLeft + "px"}, speed);
|
|
// this.positionArrow();
|
|
}
|
|
};
|
|
|
|
|
|
/* for front images */
|
|
var frontImageInterval;
|
|
$(function() {
|
|
$('.banner').eq(0).show();
|
|
$('#button0').addClass("buttonsSelected");
|
|
setTimeout(cycleFrontImage, 5000);
|
|
// frontImageInterval = setInterval(cycleFrontImage, 1000);
|
|
|
|
});
|
|
|
|
function cycleFrontImage() {
|
|
BOO = $('.buttonsSelected');
|
|
var currImage = parseInt($('.buttonsSelected').attr("id").replace("button", ""));
|
|
var currBanner = $('.banner').eq(currImage);
|
|
if (currImage < ($('.buttons').length - 1)) {
|
|
var nextImage = currImage + 1;
|
|
} else {
|
|
var nextImage = 0;
|
|
}
|
|
console.log(nextImage);
|
|
$('.banner').hide();
|
|
$('.buttonsSelected').removeClass("buttonsSelected");
|
|
$('.banner').eq(nextImage).show();
|
|
$('#button' + nextImage).addClass("buttonsSelected");
|
|
setTimeout(cycleFrontImage, 5000);
|
|
}
|
|
|
|
|
|
|