@anton99zel
29а класс средней школы №7

Как кликнуть на следующий или предыдущий input?

Есть примерно такое:
<div class="gallery-colors">
<label class="photocheck green" for="65105"><input class="gl" id="65105" name="bmw" type="radio"></label>
<label class="photocheck red" for="65106"><input class="gl" id="65106" name="bmw" type="radio"></label>
<label class="photocheck green" for="65109"><input class="gl" id="65109" name="bmw" type="radio"></label>
<label class="photocheck" for="65107"><input class="gl" id="65107" name="bmw" type="radio"></label>
<label class="photocheck" for="65123"><input class="gl" id="65123" name="bmw" type="radio"></label>
<label class="photocheck" for="65144"><input class="gl" id="65144" name="bmw" type="radio"></label>
<label class="photocheck" for="65134"><input disabled class="gl" id="65134" name="bmw" type="radio"></label>
<label class="photocheck" for="65147"><input class="gl" id="65147" name="bmw" type="radio"></label>
</div>

Когда мне надо нажать на первый незаблокированный INPUT я в событии использую это:
$('.gallery-colors').find('[type="radio"]:not(:disabled):first').click();

Я хочу расширить возможности галереи, у меня еще есть два события, но не знаю как сделать следующее:

Кликнуть на предыдущий инпут (т.е. понять какой в данный момент выбран и кликнуть предыдущий)
то же самое для следующего. Это для свайпа.
Сам свайп:
if (direction == 'left') {
                //сработает при движении влево
            }
            if (direction == 'right') {
                //сработает при движении вправо
            }
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
$('.gallery-colors :checked')
  .parent()
  .prevAll()
  .find('input[type="radio"]:not(:disabled)')
  .last()
  .click()

Это предыдущий. Следующий - надо заменить prevAll на nextAll, last на first.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы