Relación de ingresos agosto

Relación de ingresos agosto

Enlaces de Interés


Logo Gob Virtual Color E1732676862383 300x121

Servicio GOB

911 300x141 1

911

311 200x200 Mesa De Trabajo 1 E1732677093742 300x173

311

Beca Tu Futuro

Beca tu futuro

Observatorio Map

Observatorio MAP

Cncs

CNCS

Domo Logo

MIMPRE

Domo Logo

MAP

Domo Logo

DIGEIG

Domo Logo

Salud Pública

Domo Logo

Expediente Único Educativo

Logo Cuenta Unica

Cuenta Única Ciudadana

Esto se cerrará en 0 segundos

: así ocupa todo el ancho (no la columna estrecha de // WPBakery) y, al ser position:absolute, sus coordenadas "top" son respecto a la // página. El panel se ancla al punto de la página donde se abrió y se desplaza // con el scroll de forma normal (no queda pegado a la pantalla). var ea2mPanel = document.getElementById('ea2mPanel'); if(ea2mPanel && ea2mPanel.parentNode !== document.body){ document.body.appendChild(ea2mPanel); } // Calcula dónde empieza el panel = FINAL del header (no el del botón). // Prioridad: data-top (forzado) > data-header (selector) > detección automática. function calcTop(toggle){ var wrap = toggle.closest ? toggle.closest('.ea2m') : null; if(wrap){ var forced = wrap.getAttribute('data-top'); if(forced && !isNaN(parseInt(forced,10))) return parseInt(forced,10); var sel = wrap.getAttribute('data-header'); if(sel){ var h = document.querySelector(sel); if(h) return Math.round(h.getBoundingClientRect().bottom); } } // Detección automática: sube buscando el header MÁS externo y usa su base var el = toggle, best = null; while(el && el.nodeType === 1 && el !== document.body){ var tag = el.tagName.toLowerCase(); var cls = (typeof el.className === 'string' ? el.className : '').toLowerCase(); var id = (el.id || '').toLowerCase(); if(tag === 'header' || /(header|masthead|topbar|top-bar|cabecera)/.test(cls + ' ' + id)){ best = el; // seguimos subiendo para quedarnos con el contenedor más externo } el = el.parentNode; } return Math.round((best || toggle).getBoundingClientRect().bottom); } document.addEventListener('click', function(e){ var t = e.target; // 1) Toggler hamburguesa: abre/cierra el panel y cambia ☰ <-> ✕ var toggle = t.closest && t.closest('.ea2m-toggle'); if(toggle){ var panel = document.getElementById(toggle.getAttribute('aria-controls')); var open = toggle.getAttribute('aria-expanded') === 'true'; toggle.setAttribute('aria-expanded', open ? 'false' : 'true'); if(panel){ if(!open){ // Coloca el panel al FINAL del header. Como es position:absolute en , // el "top" va en coordenadas de PÁGINA = base del header (viewport) + scroll. // Así queda anclado a ese punto y se desplaza con el scroll de forma normal. var top = calcTop(toggle) + window.pageYOffset; panel.style.top = top + 'px'; } panel.classList.toggle('ea2m-open', !open); } return; } // 2) Sección "Enlaces de Interés" var sec = t.closest && t.closest('.ea2m-section-toggle'); if(sec){ var body = sec.parentNode.querySelector('.ea2m-section-body'); var op = sec.getAttribute('aria-expanded') === 'true'; sec.setAttribute('aria-expanded', op ? 'false' : 'true'); if(body) body.classList.toggle('ea2m-open', !op); return; } // 3) Grupos Portales / Instituciones (abrir uno cierra el otro) var gt = t.closest && t.closest('.ea2m-grouptoggle'); if(gt){ var section = gt.closest('.ea2m-section-body'); var collapse = gt.parentNode.querySelector('.ea2m-collapse'); var willOpen = !collapse.classList.contains('ea2m-open'); var opened = section.querySelectorAll('.ea2m-collapse.ea2m-open'); for(var j=0;j

Enlaces de Interés


Logo Gob Virtual Color E1732676862383 300x121

Servicio GOB

911 300x141 1

911

311 200x200 Mesa De Trabajo 1 E1732677093742 300x173

311

Beca Tu Futuro

Beca tu futuro

Observatorio Map

Observatorio MAP

Cncs

CNCS

Domo Logo

MIMPRE

Domo Logo

MAP

Domo Logo

DIGEIG

Domo Logo

Salud Pública

Domo Logo

Expediente Único Educativo

Logo Cuenta Unica

Cuenta Única Ciudadana

Esto se cerrará en 0 segundos