Здравствуйте. Делаю слайды (ещё придется создать тут одну тему про плавность смены картин). Сделал широоокий блок со всеми фотографиями в один ряд, и перемещаю этот блок с помощью свойства transform:translateX(). И выборку блока и изменение этого свойства нужно выполнить множество раз. Поэтому, я решил создать функцию и использовать его множество раз:
function slaidPoz(poz){
$(this).prev(".slaidlarBlok").find(".slaidContainer").css("transform", "translateX("+poz+"px)");
}
// и дальше несколько функций типа этого:
$(".kuchuUn").click(function(){
if(transPoz <= -(slRasBlok.length * slRasBlokWidth - slRasBlokWidth)){ // позиция translateX
transPoz = 0;
//slaidPoz(transPoz);
$(this).prevAll(".slaidlarBlok").find(".slaidContainer").css("transform", "translateX("+transPoz+"px)");
}else{
transPoz = transPoz - slRasBlokWidth;
//slaidPoz(transPoz);
$(this).prev(".slaidlarBlok").find(".slaidContainer").css("transform", "translateX("+transPoz+"px)");
}
});
Как видите, вызов функции мне пришлось заблокировать и написать команды вручную. Дубликат (ниже по коду еще несколько раз так), не красиво.
И как я понимаю, причина того, что код не работает, в очень простом: $(this) в объявлении функции неизвестен.
Помогите пожалуйста, как правильно решить эту проблему?