jquery функция внутри блока

204
21 марта 2018, 04:26

$('.show-link').on('click', function() { 
  $('.hidden-item').css('display', 'block'); 
  $('.show-link').css('display', 'none'); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<div class="filter-wrap"> 
 
  <label class="radio"> 
        <input type="checkbox" name="price"> 
        <div class="radio__text">Альостромерии</div> 
    </label> 
 
  <div class="show-link">Показать все</div> 
 
  <label class="radio hidden-item"> 
        <input type="checkbox" name="price"> 
        <div class="radio__text">Орхидея</div> 
    </label> 
  <label class="radio hidden-item"> 
        <input type="checkbox" name="price"> 
        <div class="radio__text">Подсолнух</div> 
    </label> 
 
</div>

Eсть несколько блоков class="show-link", как сделать чтобы функция выполнялась внутри блока по которому кликнули?

Answer 1

Как понимаю, вы хотите воздействовать на элементы, которые находятся внутри блока по которому кликают.
Но тогда не понимаю, зачем прятать данный блок.
Покажите хотя бы кусок html кода.
чтобы выбрать элемент внутри блока, по которому кликнули:

$('.show-link').on('click', function(e) {
  e.preventDefault();
  // Выбираем .hidden-item внутри this
  $('.hidden-item', this).css('display', 'block');
  return !1;
});
Answer 2

Как '.show-link' соотносится с '.hidden-item'?

$('.show-link').on('click', function() {
  $('.hidden-item').show();
  $(this).hide();
});
Answer 3

Функция не может выполняться "внутри блока", то, что ты называешь блоком - это DOM элемент, и "внутри него" функции не выполняются. Однако, если ты делаешь

$('.element').on('click', function(event){
   // this будет ссылаться на ДОМ-элемент, на который ты вешаешь обработчик.
})
READ ALSO
Почему форма заказа не срабатывает 2 раз?

Почему форма заказа не срабатывает 2 раз?

Здравствуйте, не могу понять причину, почему форма быстрой покупки не срабатывает, с другим товаром

172
Jquery повороты с условием

Jquery повороты с условием

Нужно чтобы rotate не переваливал за 360deg и при этом чтобы блок не вертелся в обратную сторону

172
ajax отправить json и вернуть результат

ajax отправить json и вернуть результат

Собираю с экрана все загруженные имена и возраста, собираю их в json и отправляю на сервер:

214
Подгрузить JS после AJAX

Подгрузить JS после AJAX

Есть страницаНа странице имеется блок с классом content - здесь подгружается AJAX содержимое

188