;(function() {
window.createMeasureObserver = (measureName) => {
var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`;
performance.mark(`${markPrefix}-start`);
return {
end: function() {
performance.mark(`${markPrefix}-end`);
performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`);
performance.clearMarks(`${markPrefix}-start`);
performance.clearMarks(`${markPrefix}-end`);
}
}
};
/**
* Gerenciador de eventos
*/
window.gevent = {
stack: [],
RUN_ONCE: true,
on: function(name, callback, once) {
this.stack.push([name, callback, !!once]);
},
emit: function(name, args) {
for (var i = this.stack.length, item; i--;) {
item = this.stack[i];
if (item[0] === name) {
item[1](args);
if (item[2]) {
this.stack.splice(i, 1);
}
}
}
}
};
var runningSearch = false;
var hadAnEvent = true;
var elementsToWatch = window.elementsToWatch = new Map();
var innerHeight = window.innerHeight;
// timestamp da última rodada do requestAnimationFrame
// É usado para limitar a procura por elementos visíveis.
var lastAnimationTS = 0;
// verifica se elemento está no viewport do usuário
var isElementInViewport = function(el) {
var rect = el.getBoundingClientRect();
var clientHeight = window.innerHeight || document.documentElement.clientHeight;
// renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content
if(el.className.includes('related-content-front')) return true;
// garante que usa ao mínimo 280px de margem para fazer o lazyload
var margin = clientHeight + Math.max(280, clientHeight * 0.2);
// se a base do componente está acima da altura da tela do usuário, está oculto
if(rect.bottom < 0 && rect.bottom > margin * -1) {
return false;
}
// se o topo do elemento está abaixo da altura da tela do usuário, está oculto
if(rect.top > margin) {
return false;
}
// se a posição do topo é negativa, verifica se a altura dele ainda
// compensa o que já foi scrollado
if(rect.top < 0 && rect.height + rect.top < 0) {
return false;
}
return true;
};
var asynxNextFreeTime = () => {
return new Promise((resolve) => {
if(window.requestIdleCallback) {
window.requestIdleCallback(resolve, {
timeout: 5000,
});
} else {
window.requestAnimationFrame(resolve);
}
});
};
var asyncValidateIfElIsInViewPort = function(promise, el) {
return promise.then(() => {
if(el) {
if(isElementInViewport(el) == true) {
const cb = elementsToWatch.get(el);
// remove da lista para não ser disparado novamente
elementsToWatch.delete(el);
cb();
}
}
}).then(asynxNextFreeTime);
};
// inicia o fluxo de procura de elementos procurados
var look = function() {
if(window.requestIdleCallback) {
window.requestIdleCallback(findByVisibleElements, {
timeout: 5000,
});
} else {
window.requestAnimationFrame(findByVisibleElements);
}
};
var findByVisibleElements = function(ts) {
var elapsedSinceLast = ts - lastAnimationTS;
// se não teve nenhum evento que possa alterar a página
if(hadAnEvent == false) {
return look();
}
if(elementsToWatch.size == 0) {
return look();
}
if(runningSearch == true) {
return look();
}
// procura por elementos visíveis apenas 5x/seg
if(elapsedSinceLast < 1000/5) {
return look();
}
// atualiza o último ts
lastAnimationTS = ts;
// reseta status de scroll para não entrar novamente aqui
hadAnEvent = false;
// indica que está rodando a procura por elementos no viewport
runningSearch = true;
const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve());
// obtém todos os elementos que podem ter view contabilizados
//elementsToWatch.forEach(function(cb, el) {
// if(isElementInViewport(el) == true) {
// // remove da lista para não ser disparado novamente
// elementsToWatch.delete(el);
// cb(el);
// }
//});
done.then(function() { runningSearch = false; });
// reinicia o fluxo de procura
look();
};
/**
* Quando o elemento `el` entrar no viewport (-20%), cb será disparado.
*/
window.lazyload = function(el, cb) {
if(el.nodeType != Node.ELEMENT_NODE) {
throw new Error("element parameter should be a Element Node");
}
if(typeof cb !== 'function') {
throw new Error("callback parameter should be a Function");
}
elementsToWatch.set(el, cb);
}
var setEvent = function() {
hadAnEvent = true;
};
window.addEventListener('scroll', setEvent, { capture: true, ive: true });
window.addEventListener('click', setEvent, { ive: true });
window.addEventListener('resize', setEvent, { ive: true });
window.addEventListener('load', setEvent, { once: true, ive: true });
window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true });
window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE);
// inicia a validação
look();
})();
Bruno Henrique brilha, Fla vira sobre o Al-Hilal e vai à final do Mundial
Bruno Henrique comemora o gol da virada sobre o Al-Hilal na semifinal do Mundial de Clubes Imagem: Alexandre Vidal/Flamengo
Leo Burlá
Do UOL, em Doha (Qatar)
17/12/2019 16h22
O Flamengo está na final do Mundial de Clubes. Assim como na decisão da Libertadores, o time teve que buscar a virada para entrar na história. Foi com menos drama, é verdade, mas a vitória por 3 a 1 sobre o Al-Hilal não deixou de ter seus momentos de dramas no Estádio Internacional de Khalifa, em Doha.
Salem abriu o placar no início do primeiro tempo e deixou os corações dos rubro-negros apertados até a volta do intervalo. É que o segundo tempo foi completamente diferente. O Flamengo empatou com Arrascaeta e viu Bruno Henrique, eleito o melhor jogador do Brasil no Pesquisão UOL, brilhar com o gol da virada e a jogada do terceiro, marcado contra por Al-Bulayhi.
Agora, o Flamengo espera o vencedor do confronto entre Liverpool, da Inglaterra, e Monterrey, do México, nesta quarta, para saber que será o seu adversário na decisão do Mundial. A grande final será no próximo sábado, às 14h30 (horário de Brasília), no Estádio da Cidade da Educação.
Melhor: Bruno Henrique e Rafinha
O segundo tempo do Flamengo foi decisivo. Bruno Henrique participou dos três gols da equipe e foi o grande destaque. Rafinha ficou um pouco atrás. O lateral participou 'apenas' de dois gols: iniciou a jogada do empate e ainda deu assistência para a virada.
Pior: Filipe Luís mal na frente e atrás
O lateral-esquerdo não vem em uma boa sequência no Flamengo. Contra o Al-Hilal, sofreu na marcação e abdicou do direito de atacar. Na segunda etapa, formou praticamente como um terceiro zagueiro ao lado de Rodrigo Caio e Marí, e não ajudou a construir pelo meio, uma de suas principais características.
Torcida do Fla em maioria em Doha
Imagem: Leo Burlá / UOL
A torcida do Flamengo esteve em ampla maioria no Estádio Khalifa. Apesar dos rubro-negros em maior número, a pequena e barulhenta torcida do Al-Hilal não deixou por menos e fez a sua festa no Mundial do Qatar. Com bandeiras e faixas, os sauditas curtiram o jogo diante dos brasileiros.
Fla não consegue se impor e leva susto no início
Acostumado a jogar com a bola nos pés e fazer forte marcação para recuperar a bola do adversário, o Flamengo parecia um outro time nos primeiros minutos de jogo. O Al-Hilal apresentou postura agressivas e ou a acumular escanteios em série. Em um deles, Giovinco recebeu e curto e invadiu pela lateral e finalizou para boa defesa de Diego Alves.
Gerson quase aproveita falha de goleiro em 1º ataque
O primeiro ataque do Flamengo ocorreu apenas aos 14min. Em cruzamento pela esquerda, o goleio Al-Muaiouf saiu mal e socou a bola sem tanta força. Atento, Gerson, na intermediária, tentou toque de cobertura, mas a mira não estava das melhores e mandou para fora. Pouco para o que o Rubro-negro mostrou na temporada.
Diego Alves salva, e Gomis perde gol incrível
Enquanto o Flamengo parecia assustado e até mesmo surpreendido com a postura do adversário, os árabes se mostravam tranquilos em campo. Mais que isso. Organizados, o Al-Hilal chegava com certa frequência ao ataque. O gol poderia ter saído aos 15min, mas DIego Alves salvou e Gomis, na sequência, perdeu gol incrível, já sem goleiro.
Pressão dá resultado e Al-Hilal abre placar
O gol parecia questão de tempo tamanha a predominância dos árabes em campo. E foi justamente o que aconteceu. Aos 17min, o Al-Hilal teve trama rápida e envolvente pelo lado direito. Salem recebeu de frente e fuzilou. A bola ainda desviou em Marí para vencer Diego Alves e estufar as redes.
Flamengo tenta dominar partida, mas sofre nos contra-ataques
A partir do gol sofrido, o Flamengo tentou ainda mais dominar a partida, mas a situação não estava nada fácil. O Al-Hilal manteve a postura agressiva mesmo em vantagem no placar, mas o Rubro-negro não conseguia aproveitar. Pelo contrário. Quem chegava com perigo eram os árabes.
Trio funciona, e Fla empata aos 3min do 2º tempo
Após uma atuação ruim no primeiro tempo, o Flamengo voltou diferente para a etapa final. O time precisou de apenas três minutos para conseguir o empate. Apagados até então o trio do Rubro-negro funcionou. Gabigol deu e primoroso para Bruno Henrique, que deixou Arrascaeta, sem goleiro, para guardar: 1 a 1.
Em jogo equilibrado, Fla vira com Bruno Henrique
Ainda que sem uma grande atuação, o Flamengo jogou o necessário para conseguir a virada. Mais ofensivo, o time ou a ter chances, o que não ocorreu no primeiro tempo. Rafinha, muito mais acionado, participou dos dois gols. Na virada, cruzou na cabeça de Bruno Henrique, que se antecipou à zaga e fez o segundo do Rubro-negro: 2 a 1.
Fla define virada com gol contra quatro minutos após virar
O Flamengo não demorou a assegurar a vaga na final. Quatro minutos após a virada, Bruno Henrique voltou a ser decisivo. Ele entrou pela esquerda e cruzou para área. O zagueiro Al-Bulayhi tentou cortar, mas fez contra: 3 a 1.
FICHA TÉCNICA: FLAMENGO 3 x 1 AL-HILAL
Data: 17/12/2019 (terça-feira) Horário: 14h30 (de Brasília) Local: Estádio Khalifa, em Doha (QAT) Árbitro: Ismail Elfath (EUA) Assistentes: Kyle Atkins (EUA), Corey Parker (EUA) Árbitro de vídeo: Alan Kelly (IRL) Cartões amarelos: Bruno Henrique, Pablo Marí, Diego (Flamengo); Giovinco, Al-Bulayhi, Al-Dawsari (Al-Hilal) Cartões vermelhos: Carrillo, do Al-Hilal, aos 37 minutos do segundo tempo Gols: Al-Dawsari, do Al-Hilal, aos 17 minutos do primeiro tempo; Arrascaeta, do Flamengo, aos 3 minutos do segundo tempo; Bruno Henrique, do Flamengo, aos 32 minutos do segundo tempo; Al-Bulayhi (contra), para o Flamengo, aos 36 minutos do segundo tempo
FLAMENGO: Diego Alves; Rafinha, Rodrigo Caio, Marí e Filipe Luís; Arão, Gerson (Diego), Everton Ribeiro e Arrascaeta (Piris); Bruno Henrique (Vitinho) e Gabigol. Técnico: Jorge Jesus
AL-HILAL: Al-Muaiouf; Al-Burayk, Jang Hyun-Soo, Al-Bulayhi e Al-Shahrani; Carlos Eduardo, Cuéllar, Carrillo e Al-Dawsari (Al-Abid); Giovinco (Khrbin) e Gomis (Otayf). Técnico: Razvan Lucescu
ID: {{comments.info.id}}
URL: {{comments.info.url}}
Ocorreu um erro ao carregar os comentários.
Por favor, tente novamente mais tarde.
{{comments.total}} Comentário
{{comments.total}} Comentários
Seja o primeiro a comentar
Essa discussão está encerrada
Não é possivel enviar novos comentários.
Essa área é exclusiva para você, , ler e comentar.
Só s do UOL podem comentar
Ainda não é ? Assine já.
Se você já é do UOL, faça seu .
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.