;(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

A última Copa de Messi e CR7

As principais histórias do último mundial dos melhores jogadores do século

Time de algozes de Messi na Copa já fez oferta insana por Cristiano Ronaldo

Salem Al-Dawsari marcou o gol que garantiu a vitória da Arábia Saudita em cima da Argentina - REUTERS/Marko Djurica
Salem Al-Dawsari marcou o gol que garantiu a vitória da Arábia Saudita em cima da Argentina Imagem: REUTERS/Marko Djurica
e Bruno Andrade

Colunista do UOL, em Doha (Qatar)

22/11/2022 14h00

Classificação e Jogos

Dois sauditas em destaque estragaram o primeiro último ato de Lionel Messi com a Argentina em Mundiais: Moha Al Owais, eleito o melhor em campo na vitória por 2 a 1, e Salem Al Dawsari, autor do golaço da virada. Ambos jogam no Al Hilal e poucos meses atrás sonharam em ter como companheiro de equipe outro dos maiores jogadores de todos os tempos ainda na ativa, o português Cristiano Ronaldo.

O clube mais rico da Arábia Saudita, que já foi treinado pelo português Jorge Jesus e conta hoje com os brasileiros Michael (ex-Flamengo) e Matheus Pereira (ex-Sporting e West Bromwich), fez a única (tentadora) proposta para o craque do Manchester United no último mercado de verão na Europa, antes do começo oficial da temporada 2022/23.

Depois de ter sido recusado publicamente por grandes da Europa, como Bayern de Munique e Atlético de Madrid, Ronaldo, que estava - e ainda está - insatisfeito nos Red Devils, foi procurado pelo Al Hilal. Porém, nem mesmo o valor estratosférico colocado em cima da mesa convenceu o jogador de 37 anos a rumar ao Oriente Médio: 250 milhões de euros (R$ 1,4 bilhões) em salários, divididos por duas temporadas - os restantes 20 milhões de euros (R$ 110 milhões) seriam para a intermediação.

"Teria sido fantástico contar com Cristiano Ronaldo no meu time. É o maior de todos, sem dúvida. Está infeliz na Inglaterra, já disse isso até naquela entrevista, então tenho certeza que seria muito feliz no nosso futebol", avisou o torcedor Basem Al Sqiri, na saída do Lusail Stadium, onde viu a Arábia Saudita fazer história diante da Argentina.

"É sonho de qualquer torcedor ter o Ronaldo do seu lado. Mas, honestamente, prefiro o Messi. Messi é mais completo, é mais mágico. Sou mesmo muito fã do Messi. Ganhamos dele aqui na Copa, o que prova que o nosso futebol pode atrair jogadores de nível mundial", reforçou Khalid Al-Dossari, fã do rival Al Ittihad Jeddah.

Al Owais e Al Dawsari não foram os únicos representantes do Al Hilal que participaram do triunfo frente aos hermanos na estreia do Grupo C da Copa do Muno de 2022. Houve também Saud Abdulhamid (lateral-direito), Ali Al Bulayhi (zagueiro), Yasser Al-Shahrani (lateral-esquerdo), Abdulellah Al-Malki (volante), Mohamed Kanno (volante), Saleh Al Shehri (atacante), Salman Al Faraj (volante) e Moha Al Burayk (lateral-direito).

Dos outros seis jogadores que entraram em campo contra os argentinos, dois atuam no Al Shabab (Has AlTambakti-zagueiro e Nawaf Al-Abed-atacante), dois no Al Nassr (Sultan Al-Ghanam-lateral e Abdulelah Al-Amri-meia), um no Al Ahli Jeddah (Haitham Asiri-atacante) e outro no Al Fateh (Firas Al-Buraikan-atacante.

Com o Al Hilal fora de cogitação nesta altura, Cristiano Ronaldo, que também está no Qatar com Portugal, aguarda uma grande prestação na Copa para ter novamente as portas abertas no Velho Continente. Está agora livre no mercado da bola, depois de ter rescindido contrato com o Manchester United nesta terça-feira (22) - o acordo era válido até junho de 2023.