I´m trying to create a JS/Jquery function to handle several image sliders on the same page.
Here´s my code:
var imageSlider = $('.imageSlider');
imageSlider.each(function(){
var imageBackground = $(this).find('.imageBackground');
var imageBackgroundFirst = $(this).find('.imageBackground:first');
var imageBackgroundLast = $(this).find('.imageBackground:last');
imageBackground.addClass('off');
imageBackgroundFirst.removeClass('off').addClass('on');
setInterval(function(){
var imageBackgroundOn = $(this).find('.imageBackground.on');
if (imageBackgroundLast.hasClass('on')){
imageBackgroundLast.removeClass('on').addClass('off');
imageBackgroundFirst.addClass('on').removeClass('off');
}
else{
imageBackgroundOn.removeClass('on').addClass('off');
imageBackgroundOn.next().addClass('on').removeClass('off');
}
}, 7500);
})
The problem is imageBackgroundOn variable inside set interval element returns undefined context... I know that setInterval handles variables in its own context, so how can I link the setInterval lines to work independent for every imageSlider element? I need that variable to be refreshed on every interval and in its own context.
Thanks in advance!