Я использую аккордеон jQuery и хочу, чтобы выбранная панель выглядела иначе, чем пользовательский интерфейс jQuery. Чтобы понять это, я не хочу иметь класс «ui-state-active» в активном заголовке, и я не знаю, как это реализовать.Запретить jQuery аккордеон от добавления ui-state-active
Моя текущая попытка:
$('#MyAccordion').accordion({
heightStyle: "content",
collapsible: true,
active: 0,
activate: function() {
$('#MyAccordion h3').removeClass("ui-state-active");
},
create: function() {
$('#MyAccordion h3').removeClass("ui-state-active");
},
beforeActivate: function() {
$('#MyAccordion h3').removeClass("ui-state-active");
}
});
JS Fiddle Демо здесь: https://jsfiddle.net/SchweizerSchoggi/u2c6zcy6/1/
Вы можете видеть, заголовок выбранной панели становится белым на мгновение прямо перед класс быть снова удален. Но как я могу предотвратить заголовок панели, чтобы получить белый (получение класса ui-state-active) вообще?
привет добавить CSS class- '.ui-гармошки заголовок-активные {фон: известь; } ' в вашем стиле –
почему? В зависимости от других параметров я устанавливаю разные классы css на разных h3-заголовках в моем аккордеоне. Я хочу, чтобы эти классы оставались видимыми, даже если заголовок h3 активен. Поэтому я должен удалить здесь активность ui-state. – SchweizerSchoggi
Если вы не хотите менять класс, вы обновляете активный обработчик событий, как 'активировать: function (event, ui) { $ (ui) .addClass (« ui-state-active »); } ' и в css изменить 'фон-цвет' на' фон' –