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

Daniel Alves diz não gostar de #somostodosmacacos: "Somos a evolução disso"

Do UOL, em São Paulo

03/05/2014 12h55

Daniel Alves diz que agora reprova a campanha #somostodosmacacos. Personagem principal da cena inspiradora da ação iniciada por Neymar e idealizada pela agência de publicidade Loducca, o lateral acha errado assumir a alcunha de macaco. Em entrevista ao programa "Altas Horas", da TV Globo, que será exibido neste sábado, o jogador do Barcelona e da seleção brasileira comentou sobre a campanha e sobre a repercussão que teve sua atitude de comer uma banana que lhe foi lançada no gramado durante jogo contra o Villarreal. As declarações foram divulgadas pela TV Globo em seu site.

"Foi intuitivo, não tinha nada programado. A gente não acredita que vão fazer isso dentro de um campo de futebol e foi uma surpresa a repercussão que deu",  contou.

Daniel Alves ainda revelou estar incomodado com atitudes racistas no futebol há tempos e que, desta vez, resolveu agir pois só as denúncias que fez em outras ocasiões não surtiram efeito."Eu estava até um pouco triste com essa situação, porque já havia denunciado em outras ocasiões e não tinha dado em nada. Tentei dar uma resposta positiva a uma ação desafortunada"

A ação de descontentamento do jogador recebeu apoio de Neymar, que lançou a campanha #somostodosmacacos nas redes sociais, com uma foto sua e de seu filho com bananas na mão.  A campanha foi muito difundida, inclusive por diversos jogadores como Lucas, Mario Balotelli e Luis Suarez, além de celebridades como Ivete Sangalo, Michel Teló e Luciano Huck. Mas também recebeu muitas críticas, principalmente após Huck colocar à venda uma camiseta com o slogan da campanha.

Um dos que não gostou do slogan foi o próprio Daniel Alves, que não concorda em dizer que é um macaco, mas sim um ser humano. Além disso, ele afirma que não pretende ganhar nenhuma publicidade pela atitude. 

"Eu não gosto muito do #somostodosmacacos, porque acho que a gente é a evolução disso. Somos humanos e todos iguais. Acho que é isso que devemos defender", explicou o lateral. "Marcas me procuraram, mas eu não quero ganhar com isso, não quero popularidade. Não quero ganhar nada a não ser a luta contra o racismo", completou.

Apesar de hoje reprovar a ação, o próprio Daniel Alves já havia defendido a campanha lançada por Neymar na última sexta-feira. Em entrevista à BBC, ele chamou os críticos da ação de hipócritas. "É hipocrisia criticar uma campanha contra o racismo. Os críticos estão se apegando ao contexto (o episódio da banana), e não ao objetivo, que é conscientizar as pessoas de que somos todos humanos e somos todos iguais", disse Daniel Alves.

O programa "Altas Horas" vai ao ar às 23h10 deste sábado.