;(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
Logo Pagbenk Seu dinheiro rende mais
Topo

Começa nova regra de cartões feita para reduzir calote, mas que pode piorar

Do UOL, em São Paulo

01/06/2018 04h00

Entram em vigor nesta sexta-feira (1º) as novas regras sobre o rotativo do cartão de crédito. O pagamento mínimo da fatura, que antes era fixo para todos os bancos, de 15%, agora terá percentual variável, definido por cada instituição, seguindo determinação do CMN (Conselho Monetário Nacional).

Antes, o cliente que entrava no rotativo do cartão, mas pagava no mínimo 15% da fatura entrava na categoria regular, com juros de 239% ao ano, em média, segundo dados de abril. Quem não pagava o mínimo de 15% entrava por até 30 dias na categoria não regular, com taxas de juros mais elevadas, de 397% ao ano.

O que mudou agora é apenas o valor de 15%. Cada banco fica livre para estabelecer o percentual que quiser, mas o cliente precisa ser comunicado no mínimo 30 dias antes de o novo valor começar a ser cobrado.

A mudança foi feita para tentar diminuir as dívidas em atraso e reduzir as taxas de juros do cartão, mas, segundo especialistas, pode aumentar o endividamento da população.

Analistas avaliam que a tendência é que os bancos diminuam o percentual de pagamento mínimo, tornando mais fácil para os clientes quitar essa parte da fatura. Assim, os calotes e dívidas em atraso diminuiriam.

O problema é que, se o cliente pagar um percentual menor do cartão de crédito na data de vencimento, vai sobrar uma parcela maior para ser paga lá na frente, com juros mais altos.

Mudança em encargos

Outra mudança que começa a valer nesta sexta diz respeito à cobrança de encargos. 

Antes, os bancos cobravam taxas diferentes no caso de atraso no pagamento das faturas de cartão de crédito, como taxa de inadimplência ou taxa de saque, além da taxa do rotativo, acrescida de multa e de juros de mora.

Com a nova regra, a cobrança de encargos a a ser limitada à taxa do rotativo, mais multa e juros de mora. 

Se não sabe responder a estas 5 questões, será muito difícil ficar rico

UOL Notícias