Ну, если мои математические данные верны, мой файл Jquery в 16 раз больше, чем может быть.Как сконденсировать подобные дублирующие функции jquery
Я строй закладок страницы категории, которая выглядит следующим образом ..
Tab1
- cat1
- cat2
- т.д.
Таб2
- cat1
- cat2
- т.д.
Все начинается содержание скрыто, а затем появляется, когда кнопка в заголовке категорий щелкают (также переключая стрелку вверх/вниз).
$("#tabName_contentLink_cat1").click(function(){
$("#tabName_contentLink_cat1 > .arrow").toggleClass('greyArrow_down')
.toggleClass('blackArrow_up');
$("#tabName_content_cat1").slideToggle("fast");
});
Этот код работает нормально, но я повторил его 16 раз!
Единственная часть, которая меняется, - это номер в конце '_cat1'.
Как я могу преобразовать этот фрагмент кода, чтобы его можно было повторно использовать 16 раз?
Я новичок, поэтому, пожалуйста, имейте это в виду.
На мой взгляд; присваивая некоторый искомый уникальный идентификатор (применимый номер категории), собирая его в переменной jQuery onClick и затем вставляя в конце каждого шва _cat'HERE, как путь вперед. Я не знаю, как это осуществить.
Благодаря
google: 'рефакторинг экстракт метод' – reto
сделав это прямо сейчас! – user2950370
Используйте классы вместо ids, а затем связывайте элементы друг с другом с помощью методов обхода DOM, таких как '.find()' и '.closest()'. – nnnnnn