MediaWiki:Common.js: mudanças entre as edições
Aparência
Sem resumo de edição Etiquetas: Reversão manual Revertido |
Sem resumo de edição Etiquetas: Reversão manual Revertido |
||
| Linha 4: | Linha 4: | ||
if ($container.length === 0) return; | if ($container.length === 0) return; | ||
var $itens = $container.find('.timeline-item'); | var $itens = $container.find('.timeline-item'); | ||
var grupoAtual = []; | |||
var numeroBloco = 1; | var numeroBloco = 1; | ||
// Varre de cima | // Varre os itens de baixo para cima (do mais antigo para o mais recente) | ||
// para agrupar corretamente o R com os A que estão ACIMA dele | |||
var $item = $( | $($itens.get().reverse()).each(function() { | ||
var $item = $(this); | |||
var verbo = $item.data('verbo'); | var verbo = $item.data('verbo'); | ||
// Adiciona o item ao grupo atual | |||
grupoAtual.push($item); | |||
// Se o item atual for um "R" | // Se o item atual for um "R", fecha o grupo e cria a caixa mãe | ||
if (verbo === 'R' || | if (verbo === 'R' || $item.is(':last-child')) { | ||
var $wrapper = $('<div class="bloco-grupo bloco-' + numeroBloco + '"></div>'); | var $wrapper = $('<div class="bloco-grupo bloco-' + numeroBloco + '"></div>'); | ||
// | // Coloca os itens na ordem correta dentro da nova caixa | ||
$.each(grupoAtual.reverse(), function(i, $el) { | |||
$wrapper.append( | $wrapper.append($el); | ||
} | }); | ||
// | // Insere a caixa mãe no topo do container | ||
$container. | $container.prepend($wrapper); | ||
// | // Reinicia para o próximo bloco de cima | ||
grupoAtual = []; | |||
numeroBloco++; | numeroBloco++; | ||
} | } | ||
} | }); | ||
}); | }); | ||
Edição das 22h41min de 6 de julho de 2026
/* Lógica de Agrupamento em Blocos Sólidos para o Infográfico */
$(document).ready(function() {
var $container = $('#infografico-vigencia');
if ($container.length === 0) return;
var $itens = $container.find('.timeline-item');
var grupoAtual = [];
var numeroBloco = 1;
// Varre os itens de baixo para cima (do mais antigo para o mais recente)
// para agrupar corretamente o R com os A que estão ACIMA dele
$($itens.get().reverse()).each(function() {
var $item = $(this);
var verbo = $item.data('verbo');
// Adiciona o item ao grupo atual
grupoAtual.push($item);
// Se o item atual for um "R", fecha o grupo e cria a caixa mãe
if (verbo === 'R' || $item.is(':last-child')) {
var $wrapper = $('<div class="bloco-grupo bloco-' + numeroBloco + '"></div>');
// Coloca os itens na ordem correta dentro da nova caixa
$.each(grupoAtual.reverse(), function(i, $el) {
$wrapper.append($el);
});
// Insere a caixa mãe no topo do container
$container.prepend($wrapper);
// Reinicia para o próximo bloco de cima
grupoAtual = [];
numeroBloco++;
}
});
});