Вход

Просмотр полной версии : Перемещение элемента по клику


Eliot456
25.06.2015, 19:52
Доброго дня уважаемые форумчане. Столкнулся со следующей задачей:
Нужно реализовать слайдер с превьюшками в виде серых прямоугольников, при активном окне контента соответствующая превьюшка желтая и при клике влево - вправо желтый прямоугольник перемещается тоже влево-вправо
2734
Вот то что я сделал:

//Обработка клика на стрелку вправо
jQuery(document).on('click', ".carousel-button-right",function(){
var carusel = jQuery(this).parents('.slider-over');
right_carusel(carusel);
jQuery('.active').next().addClass('active');
jQuery('.active').prev().removeClass();
return false;
});
//Обработка клика на стрелку влево
jQuery(document).on('click',".carousel-button-left",function(){
var carusel = jQuery(this).parents('.slider-over');
left_carusel(carusel);
jQuery('.active').prev().addClass('active');
jQuery('.active').next().removeClass();
return false;
});

прямоугольник перемещается, но проблема возникает когда он находится в конце и в начале. Как сделать чтобы если он к примеру находится в конце справа при клике вправо он перемещался в начало влево? и наоборот. Желтый прямоугольник имеет класс .active

рони
25.06.2015, 20:26
Eliot456,
не искать .prev() или next() а изменять переменную которая будет индексом текущего активного элемента, и на форуме много очень много решений для вашей задачи.
http://javascript.ru/forum/misc/51954-navigaciya-dlya-slajjdera.html

рони
25.06.2015, 20:34
Eliot456,
второй путь проверять а есть ли jQuery('.active').next() или prev()
пример решения http://javascript.ru/forum/misc/15663-listanie-teksta-v-forme-putem-nazhatiya-knopki-2.html#post359788

Eliot456
25.06.2015, 21:34
рони, Спасибо!