MediaWiki:Common.js: Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| Line 3: | Line 3: | ||
// ========================================================================== | // ========================================================================== | ||
// CONTROLADOR DE DROPDOWN | // CONTROLADOR DE DROPDOWN DIRECTO NO ÍNDICE (TOC) | ||
// ========================================================================== | // ========================================================================== | ||
// | // Procura todos os itens de lista normais do índice | ||
$('.vector-toc- | $('#mw-panel-toc .vector-toc-list-item, .vector-page-titlebar-toc .vector-toc-list-item').each(function() { | ||
var $listItem = $(this); | var $listItem = $(this); | ||
var $subList = $listItem.children('.vector-toc-list'); | var $subList = $listItem.children('ul, .vector-toc-list'); | ||
// | // Proteção: Ignora se for o nó principal do "Datasheet" ou se não tiver subcapítulos | ||
if ($subList.length > 0 && $subList.children('.vector-toc-list-item').length > 0) { | if ($listItem.hasClass('vector-toc-title') || $listItem.attr('id') === 'sidebar-toc-welcome') { | ||
return; | |||
} | |||
// Só avança se a lista filha tiver sub-itens lá dentro | |||
if ($subList.length > 0 && $subList.children('li, .vector-toc-list-item').length > 0) { | |||
// Cria a seta apenas se ela ainda não existir nesta linha | // Cria a seta apenas se ela ainda não existir nesta linha | ||
| Line 18: | Line 23: | ||
var $arrow = $('<span class="toc-toggle-arrow">▶</span>'); | var $arrow = $('<span class="toc-toggle-arrow">▶</span>'); | ||
// Evento focado | // Evento de clique focado apenas na seta | ||
$arrow.click(function(e) { | $arrow.click(function(e) { | ||
e.preventDefault(); | e.preventDefault(); | ||
| Line 25: | Line 30: | ||
}); | }); | ||
// | // Adiciona a seta no topo do container do item | ||
$listItem.prepend($arrow); | $listItem.prepend($arrow); | ||
} | } | ||