$(document).find('.spoiler.active:not(.user-click)').triggerHandler('click');$(document.querySelectorAll('.spoiler.active:not(.user-click)')).triggerHandler('click');
$(this).find('.spoiler.active:not(.user-click)').trigger('click');
Он будет работать в пределах класса MyClass.
jQuery(function ($) {
$('.spoiler').parent().on('click', '.spoiler', function (e) { //когда происходит клик по любой вкладке любого спойлера
if (e.which) //если этот клик произведен пользователем (кнопкой мыши)
{
$(this).addClass('user-click'); //добавить признак что клик произведен пользователем
if ($(this).hasClass('active')) //если эта вкладка в момент клика была закрыта
{
$(this.querySelectorAll('.spoiler.active:not(.user-click)')).triggerHahdler('click');
}
$(this.querySelectorAll('.spoiler.active.user-click')).removeClass('user-click'); //удалить признак что клик произведен пользователем
}
});
});
/**
* Достигается:
* 1. Сокращение обработчиков до 1
* 2. Нет повторного ожидания загрузки страницы
* 3. Поиск производится не по всему документу, а только в родительском контейнере
*/
А если страницу перезагрузит?