;(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ênis bate recorde de preço a US$ 1,8 milhão; entenda os 'sneakerheads'

Nike Air Yeezy, tênis de Kanye West durante a cerimônia de entrega do Grammy de 2008, leiloado por US$ 1,8 milhão na Sotheby"s - Handout / SOTHEBY"S / AFP
Nike Air Yeezy, tênis de Kanye West durante a cerimônia de entrega do Grammy de 2008, leiloado por US$ 1,8 milhão na Sotheby's Imagem: Handout / SOTHEBY'S / AFP

Do TAB

02/05/2021 04h01

Dentre os recordes mais recentes registrados na casa de leilões Sotheby's, fundada no Reino Unido em 1744, estão um quadro de Van Gogh, uma obra de Banksy e um tênis de Kanye West.

O par era da marca Nike, modelo Air Yeezy 1, e foi vendido no dia 26 de abril por US$ 1,8 milhão (por volta de R$ 9,8 milhões), batendo o recorde anterior do tênis Air Jordan 1, também da Nike, vendido em 2020 por US$ 615 mil. Em comum, além do valor exorbitante por um par de tênis, eles têm um grande nome em parceria com uma grande marca.

Essa é uma das principais características do streetwear de luxo, ou o luxo comfy, tema do novo episódio de CAOScast distribuído em TAB. Nesse universo de roupas de moletom, capuzes e muito conforto chique, os tênis vêm ganhando destaque.

Quem é aficionado pela peça e coleciona centenas de pares já tem até nome: sneakerhead. O pesquisador Tiago Faria conta no episódio que já foi assim. Apesar de ter se desfeito de parte da coleção por ter mudado sua ideia de consumo, não abandonou a peça por completo, e fica feliz em poder unir o conforto do tênis ao status um pouco mais "arrumadinho" que ele ganhou hoje em dia. Afinal, não foi sempre assim.

"Tem a teoria do 'bubble up', que se refere a esses estilos que vêm dos movimentos de rua e que acabam instigando curiosidade, a pesquisa de criadores e de grandes marcas de moda que depois vão ar a criar roupas inspiradas nesses movimentos. Funciona de baixo para cima", afirma a pesquisadora Rebeca de Moraes (ouça a partir de 13:52). Um exemplo é a marca Balenciaga, cujos tênis viraram objeto de desejo a preços próximos dos R$ 10 mil.

Boa parte desse luxo associado hoje às peças de streetwear vem da chancela da internet, explica Faria. "Acho que não tem como falar de comfy luxo sem falar do papel da internet. Os millennials são amplamente digitalizados e, por ter muito o à informação, são consumidores consequentemente muito mais exigentes e que têm muito mais relevância na tomada de decisão de compra. É através da rede social que essa parcela da população fica a par das tendências, no fim das contas. As redes estão entre os fatores que mais influenciam esse público, sendo que 40% de todos os bens de luxo comprados foram influenciados pelo que foi visto online, de acordo com o estudo Luxo na Idade do Darwinismo Digital, da Mckinsey" (a partir de 28:55).

Segundo uma pesquisa de 2018 da Bain & Company citada pelos caóticos, os millennials são a geração que mais tem contribuído para o crescimento do setor de luxo, correspondendo a 47% desse mercado.

Ficou interessado em saber como o estilo das ruas está tomando as grandes marcas e levando a contracultura às arelas? Não perca o episódio de CAOScast acima.