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

Keyla Alves desabafa após Superliga e acidente de ex-BBB Rodrigo

Key Alves chora em derrota do Osasco para o Sesc Flamengo - Reprodução: Instagram
Key Alves chora em derrota do Osasco para o Sesc Flamengo Imagem: Reprodução: Instagram

Colaboração para o UOL

07/04/2022 10h27

Keyla Alves, conhecida como Key, líbero do Osasco, modelo e influenciadora, foi às redes sociais e fez um desabafo após uma semana agitada: Rodrigo Mussi, ex-BBB que está internado em decorrência de um acidente de carro, estava na casa da jogadora antes de pegar o carro por aplicativo que bateu, causando-o traumatismo craniano e várias fraturas pelo corpo.

No dia seguinte, na última sexta-feira (1), Keyla e o Osasco foram eliminados nas quartas de final da Superliga Feminina de Vôlei. Após vencer o primeiro jogo, a equipe foi derrotada no clássico com o Sesc Flamengo no segundo e jogo de desempate, dando adeus à temporada.

A jogadora, que tem mais de 2 milhões de seguidores nas redes sociais, foi criticada por estar saindo e 'se divertindo' mesmo após as duas situações - Keyla esteve no show do Maroon 5, no Allianz Parque, na última terça-feira.

A jovem começou o desabafo reproduzindo questionamentos que vem recebendo e se defendeu. "'Key, como você pode estar saindo depois que perdeu o jogo e seu amigo sofreu um acidente assim que saiu da sua casa? Estou noites sem dormir preocupada com tudo, com o que eu posso postar, com o que vão falar, com a situação mais tensa que já vivi que foi perder as quartas de finais, em seguida recebe a notícia mais forte da minha vida que foi o acidente do meu amigo Rodrigo Mussi, minutos depois de sair da minha casa. Sério, o que eu posso fazer pra vocês sentirem o que eu estou ando é apenas escrevendo porque viver mesmo só eu", escreveu.

Keyla continuou, dizendo que o fato de estar saindo não significa que não sinta o que aconteceu - profissional e pessoalmente - em sua vida. "O fato de eu ir ao um show, um restaurante, não quer dizer que não estou chateada por ter perdido o jogo ou pelo o que houve come Rodrigo Mussi, nada disso. Pelo contrário, eu ei nesses últimos dias uma das maiores pressões que já vivi. E tentar distrair a cabeça não me faz menos atleta ou que estou pouco me importando com o Rodrigo, pelo contrário, converso todo santo dia com o irmão dele. Não está sendo fácil pra ninguém e sim, carrego uma culpa dentro de mim que não desejo a ninguém, mas Deus sabe de tudo", desabafou.

A jovem líbero finalizou explicando que gostaria de "sumir" das redes sociais, mas que contratos a impedem. "Eu tenho apenas 22 anos para estar carregando uma pressão tão grande dentro de mim e tenho medo de que isso pode me causar, faz tempo que não durmo em paz, então por favor vivam intensamente a vida de vocês, pois dias atrás eu pude ver e sentir na pele que a vida é um sopro. Minha vontade era me desligar daqui das redes, mas não posso ou tenho trabalhos, contratos, seguidores fiéis comigo que preciso estar sempre aqui, pessoas que precisam de um bom dia, então entendam, estou tentando viver normalmente, mas sabendo de tudo e tentando acreditar que um dia vai voltar a ser como antes, leve e simples", completou.

Keyla pode assumir ainda mais responsabilidade em breve: a camisa 2 já confirmou que segue no Osasco para a próxima Superliga. Já a líbero titular, a medalhista olímpica e maior referência do clube, Camila Brait, anunciou que vai dar uma pausa na carreira para ser mão novamente, após 14 anos consecutivos defendendo a equipe osasquense.