Как задать toggle для стиля?

235
18 сентября 2017, 03:46

Есть скрипт:

$('.item-contacts__title').on('click',function(){
  $(this).next().toggle('slow');
})

Нажимаю один раз открывается его children, нажимаю второй раз закрывается. Однако мне надо что бы когда он открывался имел top: 0 а когда закрывался top : 70%

$('.item-contacts__title').on('click',function(){
  $(this).next().toggle('slow');
  $(this).parent().parent().css('top','0');
})

Знаю по поводу решение с CSS + toggleclasse однако интересно возможное решение с модификации данного скрипта.

Answer 1
let isOpen = false; // Задаем переменную в которой будем хранить состояние
$('.item-contacts__title').on('click',function(){
  $(this).next().toggle('slow');
  $(this).parent().parent().css('top', (isOpen ? '70%' : 0)); // В зависимости от состояния задаем позицию
  isOpen = !isOpen; // Меняем состояние на противоположное
})
READ ALSO
Mysql быстрая сортировка по ФИО

Mysql быстрая сортировка по ФИО

Есть табличка - 1млн человек, есть разные данные, внешние ключи и тдНеобходимо быстро (насколько это возможно) выбрать из таблички данные,...

383
Как вытащить данные из запроса к БД в node.js?

Как вытащить данные из запроса к БД в node.js?

Привет! Как вытащить данные из запроса к БД функцией connectionquery в node

463
MSQL Wordpress: Дублирующаяся запись '0' по ключу 'PRIMARY'

MSQL Wordpress: Дублирующаяся запись '0' по ключу 'PRIMARY'

Экспортировал базу mysql вордпресса, потом залил обратноТеперь ничего нельзя добавить в таблицу postmeta, выдает: #1062 - Дублирующаяся запись '0' по ключу...

501
Eclipse error, синтаксис

Eclipse error, синтаксис

Syntax error, insert "}" to complete Class body Syntax error, insert "}" to complete MethodBody

358