Esta pieza es parte de Desarmar la Corrupción, la APP: explora los 447 textos del blog por tema, autor, lugar y año.Abrir la APP

Desarmar la CorrupciónBlog de anticorrupción · Nexos × Mexicanos Contra la Corrupción y la Impunidad

(function(){ /* ---- ajustes que manda quien embebe, por la URL ---- */ var q = new URLSearchParams(location.search); var raiz = document.documentElement.style; /* Dentro de un marco (o si el navegador ni deja preguntarlo, que tambien es un marco de otro origen), el margen lateral lo pone quien hospeda. */ try { if (window.self !== window.top) document.documentElement.classList.add('en-marco'); } catch (e) { document.documentElement.classList.add('en-marco'); } var ancho = parseInt(q.get('ancho'), 10); if (ancho > 0) raiz.setProperty('--ancho', ancho + 'px'); var aire = q.get('aire'); if (aire !== null && aire !== '' && !isNaN(parseInt(aire, 10))) { raiz.setProperty('--aire-movil', parseInt(aire, 10) + 'px'); } /* ---- alto para quien embebe ---- */ var ultimo = 0, pendiente = 0; /* El reintento va con temporizador y NO con requestAnimationFrame: en una pestaña de segundo plano el navegador congela los cuadros de animación y la pieza se quedaría con su alto de arranque para siempre. */ function reintentar(){ if (pendiente) return; pendiente = setTimeout(function(){ pendiente = 0; avisarAlto(); }, 150); } function avisarAlto(){ var c = document.querySelector('.pieza'); if (!c) return; var caja = c.getBoundingClientRect(); /* Nunca se reporta un alto medido con ancho CERO: el texto se parte letra por letra y el alto sale disparado. Un alto absurdo deja media pantalla en blanco sin dar ningún error. */ if (caja.width < 40) { reintentar(); return; } var h = Math.ceil(caja.height) + 8; if (h === ultimo) return; ultimo = h; try{ parent.postMessage({tipo:'mcci-embed-alto', slug:'desarmar-la-corrupcion-lite', alto:h}, '*'); } catch(err){} } window.avisarAlto = avisarAlto; window.addEventListener('resize', avisarAlto); document.addEventListener('visibilitychange', avisarAlto); if (window.ResizeObserver){ new ResizeObserver(function(){ avisarAlto(); }).observe(document.querySelector('.pieza')); } avisarAlto(); setTimeout(avisarAlto, 350); if (document.fonts && document.fonts.ready) document.fonts.ready.then(avisarAlto); })();