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

Técnico da Venezuela sobre jogo com Brasil: "Não vai me deixar dormir"

Rafael Dudamel, técnico da seleção da Venezuela, brincou sobre confronto com a seleção - Divulgação/LaVinotinto
Rafael Dudamel, técnico da seleção da Venezuela, brincou sobre confronto com a seleção Imagem: Divulgação/LaVinotinto

Marinho Saldanha

Do UOL, em Porto Alegre

15/06/2019 19h17

O técnico da Venezuela brincou sobre o próximo confronto da sua seleção, contra o Brasil, em Salvador. Depois do empate em 0 a 0 com o Peru, hoje (15), na Arena do Grêmio, pela primeira rodada do grupo A da Copa América, o treinador disse que não iria dormir pensando nos jogadores da seleção.

"Não vai me deixar dormir esta noite?", brincou quando perguntado sobre os jogadores do Brasil. "Mencionando os jogadores do Brasil assim, não vai me deixar descansar", continuou Dudamel. "Enfrentar o Brasil significa enfrentar uma das melhores seleções do Mundo. Enfrentaremos, competiremos, aprenderemos muito com isso, tenho certeza", completou.

Segundo ele, a Venezuela vai se comportar diferente da Bolívia, derrotada por 3 a 0 na estreia. Em vez de se defender, irá procurar o ataque em algum momento do jogo.

"Jogar de igual para igual com o Brasil é uma grande bobagem. Tenho que dizer que não vamos nos meter a se defender, que foi o que fez a Bolívia. Temos que tentar realizar nosso jogo, com segurança. Vamos enfrentar um rival muito bom, fisicamente fortíssimo. O Brasil modernizado realiza um jogo irável. E nós, dentro dos nossos argumentos, temos que fazer um bom jogo", completou.

"Vamos jogar com respeito e iração. Mas sem complexos. Vamos jogar com segurança, como nos caracterizamos. Cuidados normais de quem vai enfrentar um dos candidatos ao título. Sabemos que será um jogo lindo, excelente para jogar. Sabemos o que significa o jogo e vamos focar em tomar as melhores decisões", completou o treinador.

O jogo contra a seleção brasileira será na próxima terça-feira, em Salvador. O Brasil lidera o grupo A da Copa América com três pontos. Venezuela e Peru somam um ponto cada e a Bolívia não te ponto algum.