sexta-feira, maio 22, 2026

Simulador da seleção brasileira: Monte o seu time titular

Date:

Share post:

A lista dos 26 convocados foi definida, mas a dor de cabeça agora é outra: qual deve ser o time titular? Escolha sua formação, escale seus 11 favoritos e mostre nas redes sociais como o Brasil deve ir a campo.

O elenco está recheado de opções de peso, especialmente no setor ofensivo. Como acomodar craques como Vinicius Júnior, Neymar, Raphinha e Endrick? Vale a pena abrir mão de um homem de meio-campo para jogar com um quarteto de ataque avassalador?

Chegou a hora de você assumir a prancheta!

O 365Scores preparou um simulador para você escalar o seu Time Ideal da Seleção. A regra é clara: você tem os 26 nomes oficiais à disposição e precisa escolher apenas 11 para entrar em campo.

Raio-X e informações da Seleção para a Copa de 2026

➡️ Copa de 2026: Seleção tem sete jogadores que atuam no Brasileirão➡️ Raio-X da Seleção de 2026: Idade, altura e os estados com mais convocados por Ancelotti

Como funciona o Simulador da Seleção do 365Scores?

Você tem liberdade tática para armar o time em duas formações diferentes, dependendo do seu nível de ousadia:

O clássico 4-3-3: Goleiro, quatro defensores, três meias e três atacantes.

O ofensivo 4-2-4: Goleiro, quatro defensores, apenas dois meias de contenção e quatro atacantes.

Titulares Escolhidos
0 / 11

GOL (1)0
DEF (4)0
MEI (2 a 3)0
ATA (3 a 4)0

Esquemas 4-3-3 ou 4-2-4

ESCALAR TIME

Os 11 escolhidos da Seleção Brasileira

Compartilhe seu Time

Compartilhar

Copiar

X (Twitter)

Refazer Time

`;
}

// Pula o treinador e vai direto pro campo!
function showFinalSquad() {
document.getElementById(‘selection-view’).classList.add(‘hidden’);
document.getElementById(‘app-header’).classList.add(‘hidden’);
document.getElementById(‘final-view’).classList.remove(‘hidden’);

if (window.parent) {
window.parent.postMessage({ type: ‘sim-scroll-top’ }, ‘*’);
}

const players = parseCSV(playersData);
const selected = Array.from(state.selectedPlayers).map(id => players.find(p => p.id === id));

// Defensores com lógica de peso para ordenar (Esquerda para Direita)
let defenders = selected.filter(p => p.position === ‘DEFENSOR’);
defenders.sort((a, b) => {
const wA = defWeights[a.name] || 2;
const wB = defWeights[b.name] || 2;
return wA – wB;
});

// Atacantes com lógica de peso para ordenar (Esquerda para Direita)
let attackers = selected.filter(p => p.position === ‘ATACANTE’);
attackers.sort((a, b) => {
const wA = attWeights[a.name] || 2;
const wB = attWeights[b.name] || 2;
return wA – wB;
});

document.getElementById(‘pitch-goalkeepers’).innerHTML = selected.filter(p => p.position === ‘GOLEIRO’).map(renderPitchPlayer).join(”);
document.getElementById(‘pitch-defenders’).innerHTML = defenders.map(renderPitchPlayer).join(”);
document.getElementById(‘pitch-midfielders’).innerHTML = selected.filter(p => p.position === ‘MEIO-CAMPISTA’).map(renderPitchPlayer).join(”);
document.getElementById(‘pitch-attackers’).innerHTML = attackers.map(renderPitchPlayer).join(”);

if (typeof window.reportHeight === ‘function’) setTimeout(window.reportHeight, 100);
}

window.resetApp = function() {
state.selectedPlayers.clear();
document.querySelectorAll(‘.player-card’).forEach(el => el.classList.remove(‘selected’));

document.getElementById(‘final-view’).classList.add(‘hidden’);
document.getElementById(‘selection-view’).classList.remove(‘hidden’);
document.getElementById(‘app-header’).classList.remove(‘hidden’);

if (window.parent) window.parent.postMessage({ type: ‘sim-scroll-top’ }, ‘*’);
updateUI();
if (typeof window.reportHeight === ‘function’) setTimeout(window.reportHeight, 100);
};

function getSquadText() {
const players = parseCSV(playersData);
let text = “🇧🇷 MEU TIME IDEAL DO BRASIL 🇧🇷\n\n”;
const positions = [‘GOLEIRO’, ‘DEFENSOR’, ‘MEIO-CAMPISTA’, ‘ATACANTE’];

positions.forEach(pos => {
text += `${POS_PLURAL[pos].toUpperCase()}:\n`;
Array.from(state.selectedPlayers).forEach(id => {
const p = players.find(x => x.id === id);
if(p && p.position === pos) text += `• ${p.name}\n`;
});
text += “\n”;
});
text += “Escale o seu no 365Scores!”;
return text;
}

async function handleNativeShare() {
const text = getSquadText();
if (navigator.share) {
try { await navigator.share({ title: ‘Meu Time Ideal do Brasil’, text: text, url: window.location.href }); } catch (err) {}
} else {
handleClipboardCopy();
}
}

function handleClipboardCopy() {
const text = getSquadText();
const textArea = document.createElement(“textarea”);
textArea.value = text;
document.body.appendChild(textArea);
textArea.select();
document.execCommand(‘copy’);
document.body.removeChild(textArea);
showAlert(“Time copiado para a área de transferência!”);
}

function handleTwitterShare() {
const text = encodeURIComponent(“Esse é meu time ideal da seleção brasileira! 🇧🇷⚽️\n\n#365Scores #Brasil #SeleçãoBrasileira”);
const url = `https://twitter.com/intent/tweet?text=${text}&url=${encodeURIComponent(window.location.href)}`;
window.open(url, ‘_blank’);
}

function init() {
const players = parseCSV(playersData);
const container = document.getElementById(‘player-lists’);
if(!container) return;

const positions = [‘GOLEIRO’, ‘DEFENSOR’, ‘MEIO-CAMPISTA’, ‘ATACANTE’];
positions.forEach(pos => {
const filtered = players.filter(p => p.position === pos);
const section = document.createElement(‘div’);

let limitText = “”;
if(state.limits[pos].min === state.limits[pos].max) {
limitText = `ESCOLHA ${state.limits[pos].max}`;
} else {
limitText = `ESCOLHA DE ${state.limits[pos].min} A ${state.limits[pos].max}`;
}

section.innerHTML = `

${POS_PLURAL[pos].toUpperCase()} ${limitText}

${filtered.map(p => `

${p.name}
${p.team}

`).join(”)}

`;
container.appendChild(section);
});

// Vai direto pro campinho!
document.getElementById(‘finalize-btn’).addEventListener(‘click’, showFinalSquad);

document.getElementById(‘share-native-btn’).addEventListener(‘click’, handleNativeShare);
document.getElementById(‘copy-clipboard-btn’).addEventListener(‘click’, handleClipboardCopy);
document.getElementById(‘share-twitter-btn’).addEventListener(‘click’, handleTwitterShare);

updateUI();
}

window.addEventListener(‘load’, init);

let lastHeight = 0;
window.reportHeight = function() {
if (window.parent) {
const wrapper = document.getElementById(‘main-wrapper’);
if(wrapper) {
const currentHeight = wrapper.offsetHeight;
if (Math.abs(currentHeight – lastHeight) > 15) {
lastHeight = currentHeight;
window.parent.postMessage({
type: ‘sim-resize’,
height: currentHeight
}, ‘*’);
}
}
}
}
window.addEventListener(‘load’, () => setTimeout(window.reportHeight, 300));
window.addEventListener(‘resize’, () => setTimeout(window.reportHeight, 100));

➡️ “Nós vamos ganhar essa porr*”: Neymar chora e fala com Raphinha após a convocação➡️ Os donos da lista: Quais clubes têm mais jogadores na Seleção para a Copa 2026?



:

Bora Ouvir – Total 40 Graus
BORA OUVIR
PROGRAMAÇÃO TOTAL 40 GRAUS
🔴 AO VIVO AGORA
Clique em "Letra" para ver a letra da música atual
Canais Oficiais

Instagram

Siga e acompanha

Seguir no Instagram

YouTube

Inscreva-se no canal

Inscrever-se

TikTok

Siga e veja os vídeos

Seguir no TikTok
Barra Redes Sociais

LEAVE A REPLY

Please enter your comment!
Please enter your name here

73,500FansLike

Artigos relacionados

Mulher é ameaça durante cobrança de dívida por cesta básica nas Moreninhas

Uma mulher denunciou ter sido ameaçada por um funcionário de uma empresa de cestas básicas durante uma cobrança,...

Prefeitura ‘compra’ área equivalente a três parques das Nações Indígenas; preços omitidos

Prefeitura anunciou, nesta quinta-feira (21), que desapropriou diversas áreas na cidade, que somam cerca de 379 hectares, em...

Distraído? Motorista fica ferido ao bater em carro estacionado em Aparecida do Taboado

Um motorista ficou ferido após colidir na traseira de um carro estacionado na noite desta quinta-feira (21), em...

Preso por porte de armas após esposa tirar a própria vida, cardiologista é solto em Campo Grande

O cardiologista João Jazbik Neto, de 78 anos, preso por porte ilegal de arma de fogo após a...