В общем не могу разобраться в чем косяк!
В общем при первом нажатии medals.click все работает отлично, при втором medals.click неправильно работает обработчик rightButtonScroll.click... срабатывает сразу несколько раз и выдает последний результат!
var medals = $(".medalBlock a");
var sportsmen = [medalists.Gold, medalists.Silver, medalists.Bronse];
var num, medalNum;
medals.click(function() {
num = 0;
if (this === medals[0] ) { medalNum = 0; }
if (this === medals[1] ) { medalNum = 1; }
if (this === medals[2] ) { medalNum = 2; }
rotateSportsmenList();
rightButtonScroll.click(function() {
if ((num+1) < sportsmen[medalNum].length) {
num++;
rotateSportsmenList();
}
});
leftButtonScroll.click(function() {
if (num > 0) {
num--;
rotateSportsmenList();
}
});
function rotateSportsmenList(){
statusScroll.text(num+1 + " из " + sportsmen[medalNum].length);
nameSportsmenBlock.html(sportsmen[medalNum][num].name);
$(".sportsmenImgBlock a").css({background: "url("+sportsmen[medalNum][num].imagesURL +") no-repeat"});
sportsmenBiographyBlock.text(sportsmen[medalNum][num].biography);
}
});
кстати, раз уже спрашиваю, то почему-то не работает конструкция для данного когда:
for (var i = 0; i < medals.length; i++) {
(function(k) {
medals[k].click(function(e) {
});
})(i);
}
только давайте без мата, и без тупых советов типа "иди еще раз прочитай главу о замыканиях"! если нету желания помочь - то иди себе мимо с Богом!)