;(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(); })();
  • AssineUOL
Topo

'Amarga história de azar': como jornais ingleses reagiram à queda na Copa

Seleção britânica perdeu para a França por 2 a 1 e deu adeus ao torneio no Qatar - Adrian DENNIS / AFP
Seleção britânica perdeu para a França por 2 a 1 e deu adeus ao torneio no Qatar Imagem: Adrian DENNIS / AFP

Do UOL, em São Paulo

10/12/2022 19h45

Classificação e Jogos

A eliminação da Inglaterra na Copa do Mundo, ocorrida na tarde de hoje em jogo contra a França que acabou em 2 a 1 para os atuais campeões do torneio, foi classificada como "amarga" pela imprensa britânica.

Logo depois do apito final do brasileiro Wilton Pereira Sampaio, os jornais locais evitaram críticas pesadas ao elenco de Gareth Southgate e usaram, por outro lado, um tom de lamentação.

"Pela enésima vez, a Inglaterra foi deixada para refletir sobre uma amarga história de azar. Esta era para ser a noite em que tudo se encaixava contra os campeões mundiais, alinhando mentalidade com qualidade e com lições do ado ajudando a Inglaterra a uma vitória histórica. Isso não aconteceu", iniciou o The Guardian.

O Daily Mail ressaltou o longo tempo da seleção local sem títulos — a Inglaterra faturou a Copa apenas uma vez, em 1966.

"A espera tortuosa da nação pela glória no cenário internacional continuará depois de um pênalti crítico falhado por Harry Kane", iniciou. "As esperanças de uma nação foram frustradas com a queda na Copa do Mundo", prosseguiu o veículo.

"A Inglaterra está fora e dói"

Considerado um dos mais tradicionais da região, o jornal The Independent fez um rápido panorama dos fracassos recentes da seleção tanto no mundial quanto na Eurocopa.

"A Inglaterra está fora de um grande torneio novamente, como estava há doze anos [Copa de 2010], quando as performances não correspondiam às expectativas; como eram oito anos atrás [na Copa de 2014], quando terminaram em último lugar no grupo; como eram há seis anos [na Eurocopa de 2016, eliminada para a Islândia], quando sem dúvida a derrota mais embaraçosa de sua história cimentou um sentimento de apatia em torno desta equipe. Mas desta vez, a Inglaterra está fora e dói", publicou.

Por fim, o The Sun estampou em seu site o título "Harry Pain", uma ironia com o nome do atacante Harry Kane, que desperdiçou um pênalti já no 2° tempo do duelo contra os ses. "Pain", em inglês, significa "dor".