Contenido
Se modificará el Sistema Anticorrupción para acabar con repartición de cuotas: Sheinbaum
// ------------------------------------------------------------------------------------------------------------------------------- // PHOTOSWIPE
var initPhotoSwipeFromDOM = function(gallerySelector) {
// parse slide data (url, title, size ...) from DOM elements // (children of gallerySelector) var parseThumbnailElements = function(el) { var thumbElements = el.childNodes, numNodes = thumbElements.length, items = [], figureEl, linkEl, size, item;
for(var i = 0; i < numNodes; i++) { figureEl = thumbElements[i]; //
// include only element nodes if(figureEl.nodeType !== 1) { continue; }
linkEl = figureEl.children[0]; // element
size = linkEl.getAttribute('data-size').split('x');
// create slide object item = { src: linkEl.getAttribute('href'), w: parseInt(size[0], 10), h: parseInt(size[1], 10) };
if(figureEl.children.length > 1) {
//
if(linkEl.children.length > 0) { // thumbnail element, retrieving thumbnail url item.msrc = linkEl.children[0].getAttribute('src'); }
item.el = figureEl; // save link to element for getThumbBoundsFn items.push(item); }
return items; };
// find nearest parent element var closest = function closest(el, fn) { return el && ( fn(el) ? el : closest(el.parentNode, fn) ); };
// triggers when user clicks on thumbnail var onThumbnailsClick = function(e) { e = e || window.event; e.preventDefault ? e.preventDefault() : e.returnValue = false;
var eTarget = e.target || e.srcElement;
// find root element of slide var clickedListItem = closest(eTarget, function(el) { return (el.tagName && el.tagName.toUpperCase() === 'FIGURE'); });
if(!clickedListItem) { return; }
// find index of clicked item by looping through all child nodes // alternatively, you may define index via data- attribute var clickedGallery = clickedListItem.parentNode, childNodes = clickedListItem.parentNode.childNodes, numChildNodes = childNodes.length, nodeIndex = 0, index;
for (var i = 0; i < numChildNodes; i++) { if(childNodes[i].nodeType !== 1) { continue; } if(childNodes[i] === clickedListItem) { index = nodeIndex; break; } nodeIndex++; } if(index >= 0) { // open PhotoSwipe if valid index found openPhotoSwipe( index, clickedGallery ); } return false; };
// parse picture index and gallery index from URL (#&pid=1&gid=2) var photoswipeParseHash = function() { var hash = window.location.hash.substring(1), params = {};
if(hash.length < 5) { return params; } var vars = hash.split('&'); for (var i = 0; i < vars.length; i++) { if(!vars[i]) { continue; } var pair = vars[i].split('='); if(pair.length < 2) { continue; } params[pair[0]] = pair[1]; } if(params.gid) { params.gid = parseInt(params.gid, 10); } return params; }; var openPhotoSwipe = function(index, galleryElement, disableAnimation, fromURL) { var pswpElement = document.querySelectorAll('.pswp')[0], gallery, options, items; items = parseThumbnailElements(galleryElement); // define options (if needed) options = { // define gallery index (for URL) galleryUID: galleryElement.getAttribute('data-pswp-uid'), getThumbBoundsFn: function(index) { // See Options -> getThumbBoundsFn section of documentation for more info var thumbnail = items[index].el.getElementsByTagName('img')[0], // find thumbnail pageYScroll = window.pageYOffset || document.documentElement.scrollTop, rect = thumbnail.getBoundingClientRect();
return {x:rect.left, y:rect.top + pageYScroll, w:rect.width}; }
};
// PhotoSwipe opened from URL if(fromURL) { if(options.galleryPIDs) { // parse real index when custom PIDs are used // http://photoswipe.com/documentation/faq.html#custom-pid-in-url for(var j = 0; j < items.length; j++) { if(items[j].pid == index) { options.index = j; break; } } } else { // in URL indexes start from 1 options.index = parseInt(index, 10) - 1; } } else { options.index = parseInt(index, 10); } // exit if index not found if( isNaN(options.index) ) { return; } if(disableAnimation) { options.showAnimationDuration = 0; } // Pass data to PhotoSwipe and initialize it gallery = new PhotoSwipe( pswpElement, PhotoSwipeUI_Default, items, options); gallery.init(); }; // loop through all gallery elements and bind events var galleryElements = document.querySelectorAll( gallerySelector ); for(var i = 0, l = galleryElements.length; i < l; i++) { galleryElements[i].setAttribute('data-pswp-uid', i+1); galleryElements[i].onclick = onThumbnailsClick; } // Parse URL and open gallery if it contains #&pid=3&gid=1 var hashData = photoswipeParseHash(); if(hashData.pid && hashData.gid) { openPhotoSwipe( hashData.pid , galleryElements[ hashData.gid - 1 ], true, true ); } }; // execute above function initPhotoSwipeFromDOM('.my-gallery'); // ====================================== // FIN SCRIPTS PHOTOSWIPE // ======================================
Fiel a los pasos del virtual presidente electo, Andrés Manuel López Obrador, Sheinbaum Pardo se reunió esta mañana con los 38 legisladores locales que integrarán la bancada de Morena en el primer Congreso de la Ciudad de México.
Tras el encuentro, que la futura jefa de gobierno calificó como una “reunión emotiva”, Sheinbaum aseguró que será prioridad modificar el sistema anticorrupción de la CDMX, aprobado en la última asamblea legislativa, por considerarlo anticonstitucional y un mecanismo de “repartición de cuotas”.
Consultado por separado, César Craviotto, actual líder de la bancada morenista en la ALDF e integrante del equipo de transición de la jefatura de gobierno, refirió a Apro que parte de la propuesta será un recorte administrativo al Sistema Anticorrupción de la Ciudad de México, que consistirá, por ejemplo, en bajar de veinte a tres los magistrados del anticorrupción , así como de siete a cinco los comisionados del Instituto de Acceso a la Información Pública y Protección de Datos Personales del Distrito Federal (INFODF).
El aún legislador aseguró que el sistema anticorrupción aprobado en la última legislatura, donde el PRD y el PAN tenían posiciones clave, lo único que hizo fue robustecer a este organismo y convertir las plazas en un asunto de repartición de cuotas.
“Lo vamos a achicar, porque no se trata de hacer burocracia por burocracia, el funcionamiento de los organismos no depende de cuantas cabezas tenga, sino que haya eficiencia y un trabajo honrado”, indicó.
Otras iniciativas que buscará la primera jefa de gobierno electa en la capital será aplicar el proyecto de austeridad republicana de López Obrador, con la propuesta de recortar a la mitad el presupuesto al Congreso de la Ciudad de México, así como reducir puestos en el mismo organismo.
No obstante, señaló que se trata de una “amigable sugerencia” y que al final será decisión de la bancada local.
“Es la refundación de la CDMX con una nueva forma de gobierno, con mayor autonomía establecida en la constitución; (queremos) que no haya leyes al vapor, que no haya ocurrencias, sino que realmente se tome en serio este papel fundamental que tenemos como responsabilidad histórica para dejar la refundación de la CDMX en este nuevo marco legislativo”, dijo Sheinbaum Pardo.
En el mismo sentido, a pregunta expresa a César Craviotto sobre el respeto a la división de poderes – pues se debe considerar que Morena tiene mayoría en el congreso local, así como la titularidad de 11 de las 16 alcaldías, y la jefatura de gobierno— aseguró que se buscarán respetar la labor de cada uno de éstos, sin embargo, advirtió que “a nadie le debe sorprender” que haya una “colaboración” entre el congreso y el ejecutivo, “para cambiar muchas normas”.
“Los capitalinos votaron mayoría absoluta de Morena, se nos está dando la encomienda de transformar la ciudad, entonces que tampoco se sorprenda de que haya colaboración entre el congreso y el ejecutivo”, dijo.
Comentarios
// Obtener todos los elementos con clase .col-md-12 var colElements = document.querySelectorAll('.col-md-12');
// Iterar sobre cada elemento colElements.forEach(function(element) { // Verificar si tiene un hijo inmediato con clase .titulo-region var tituloRegion = element.querySelector('.titulo-region');
if (tituloRegion) { // Agregar la clase .is-sticky al elemento padre element.classList.add('is-sticky'); } });
// Obtener el elemento article dentro de .fila-especial-v2 .p50 var articleElement = document.querySelector('.home .fila-especial-v2 .p50 article');
// Obtener el texto del elemento .z-foto .bajada p var bajadaText = articleElement.querySelector('.z-foto .bajada p').textContent;
// Crear un nuevo elemento para mostrar el texto obtenido var textoElement = document.createElement('p'); textoElement.textContent = bajadaText;
// Obtener el elemento .z-txt .titulo dentro del article var tituloElement = articleElement.querySelector('.z-txt .titulo');
// Insertar el nuevo elemento al final del article articleElement.appendChild(textoElement);
Cortesía de Proceso.
Dejanos un comentario: