MediaWiki:Common.js: Difference between revisions
Appearance
No edit summary |
No edit summary Tag: Reverted |
||
| Line 73: | Line 73: | ||
$block.css('position', 'relative').prepend($button); | $block.css('position', 'relative').prepend($button); | ||
}); | |||
}); | |||
/* --- LÓGICA DE CHEVRONS PARA O ÍNDICE (TOC) --- */ | |||
$(function() { | |||
var $toc = $('#toc'); | |||
if (!$toc.length) return; | |||
// Procura listas que são sub-itens (ul dentro de li) | |||
$toc.find('li > ul').each(function() { | |||
var $subList = $(this); | |||
var $parentLi = $subList.parent(); | |||
// Criar a seta (Chevron) | |||
var $chevron = $('<span class="toc-custom-toggle"></span>') | |||
.html('▾') // Seta para baixo | |||
.css({ | |||
'cursor': 'pointer', | |||
'margin-right': '6px', | |||
'display': 'inline-block', | |||
'transition': 'transform 0.2s', | |||
'color': '#0645ad', | |||
'font-weight': 'bold' | |||
}); | |||
// Insere a seta no início do item da lista | |||
$parentLi.prepend($chevron); | |||
// Evento de clique | |||
$chevron.on('click', function(e) { | |||
e.stopPropagation(); | |||
$subList.slideToggle('fast'); | |||
// Roda a seta | |||
if ($(this).data('collapsed')) { | |||
$(this).css('transform', 'rotate(0deg)').data('collapsed', false); | |||
} else { | |||
$(this).css('transform', 'rotate(-90deg)').data('collapsed', true); | |||
} | |||
}); | |||
// Opcional: Descomenta a linha abaixo para o índice começar todo fechado | |||
// $subList.hide(); $chevron.css('transform', 'rotate(-90deg)').data('collapsed', true); | |||
}); | }); | ||
}); | }); | ||