Ir al contenido

Networking

Encuentra todo lo necesario para hacer de tu casa un hogar.

No se definió ningún producto

No hay productos definidos en esta categoría.

// ===== MARQUEE LOGOS ===== document.addEventListener('DOMContentLoaded', function() { function initMarquee() { // Buscar la seccion de marcas por su titulo var sections = document.querySelectorAll('section, .s_allow_columns'); var brandSection = null; sections.forEach(function(sec) { var h2 = sec.querySelector('h2, h3'); if (h2 && h2.textContent.trim().includes('Marcas que distribuimos')) { brandSection = sec; } }); if (!brandSection) return; // Ya fue inicializado? if (brandSection.querySelector('.nexusm2-marquee-wrapper')) return; // Recolectar todos los links con imagenes var logoLinks = brandSection.querySelectorAll('a[href]'); var logos = []; logoLinks.forEach(function(link) { var img = link.querySelector('img'); if (img) { logos.push({ src: img.src, alt: img.alt || '', href: link.href }); } }); if (logos.length === 0) return; // Ocultar el grid original var grid = brandSection.querySelector('.s_nb_column_fixed, [class*="row"], .o_grid_mode'); if (!grid) { // buscar el contenedor de logos directamente var allImgs = brandSection.querySelectorAll('img'); if (allImgs.length > 0) { grid = allImgs[0].closest('div.row, div[class*="col"]'); if (grid) grid = grid.parentElement; } } if (grid) grid.style.display = 'none'; // Crear el marquee var wrapper = document.createElement('div'); wrapper.className = 'nexusm2-marquee-wrapper'; var track = document.createElement('div'); track.className = 'nexusm2-marquee-track'; // Duplicar para loop infinito [logos, logos].forEach(function(set) { set.forEach(function(logo) { var a = document.createElement('a'); a.href = logo.href; var img = document.createElement('img'); img.src = logo.src; img.alt = logo.alt; a.appendChild(img); track.appendChild(a); }); }); wrapper.appendChild(track); // Insertar despues del grid if (grid) { grid.parentNode.insertBefore(wrapper, grid.nextSibling); } else { brandSection.appendChild(wrapper); } } initMarquee(); setTimeout(initMarquee, 800); setTimeout(initMarquee, 2000); }); // Ocultar grid original de logos despues del marquee function hideOriginalGrid() { document.querySelectorAll('section, .s_allow_columns').forEach(function(sec) { var h2 = sec.querySelector('h2, h3'); if (!h2 || !h2.textContent.trim().includes('Marcas que distribuimos')) return; var marquee = sec.querySelector('.nexusm2-marquee-wrapper'); if (!marquee) return; // Ocultar todos los divs directos que tengan imagenes de logos (no el marquee) sec.querySelectorAll(':scope > div').forEach(function(child) { if (!child.classList.contains('nexusm2-marquee-wrapper')) { var hasLogos = child.querySelector('a img'); if (hasLogos) child.style.setProperty('display', 'none', 'important'); } }); // Ocultar contenedor .o_grid_mode dentro de la seccion sec.querySelectorAll('.o_grid_mode, [class*="s_col"]').forEach(function(el) { el.style.setProperty('display', 'none', 'important'); }); }); } setTimeout(hideOriginalGrid, 500); setTimeout(hideOriginalGrid, 1500); setTimeout(hideOriginalGrid, 3000); // Metodo alternativo: ocultar el ancestro de los logo-links del grid original function hideLogoGrid() { var h2Els = document.querySelectorAll('h2, h3'); var brandSection = null; h2Els.forEach(function(h) { if (h.textContent.trim().includes('Marcas que distribuimos')) { brandSection = h.closest('section') || h.parentElement; } }); if (!brandSection) return; if (!brandSection.querySelector('.nexusm2-marquee-wrapper')) return; // Buscar el primer link de logo y subir hasta el contenedor del grid var firstLogo = brandSection.querySelector('a[href*="search="] img'); if (!firstLogo) return; var logoContainer = firstLogo.parentElement; // el var gridDiv = logoContainer.parentElement; // div inmediato padre del // Subir hasta encontrar un div que no sea el nexusm2-marquee-track while (gridDiv && gridDiv.classList.contains('nexusm2-marquee-track')) { gridDiv = gridDiv.parentElement.parentElement; if (!gridDiv) return; firstLogo = null; break; } if (gridDiv && !gridDiv.classList.contains('nexusm2-marquee-wrapper') && !gridDiv.classList.contains('nexusm2-marquee-track')) { // Subir un nivel mas para ocultar todo el contenedor var toHide = gridDiv.parentElement || gridDiv; if (toHide && !toHide.classList.contains('nexusm2-marquee-wrapper')) { toHide.style.setProperty('display', 'none', 'important'); } } } setTimeout(hideLogoGrid, 1000); setTimeout(hideLogoGrid, 2500); // Ocultar grid mediante segundo hijo de la seccion function hideByChildren() { document.querySelectorAll('section').forEach(function(sec) { var h = sec.querySelector('h2, h3'); if (!h || !h.textContent.includes('Marcas que distribuimos')) return; if (!sec.querySelector('.nexusm2-marquee-wrapper')) return; Array.from(sec.children).forEach(function(child) { if (child.classList.contains('nexusm2-marquee-wrapper')) return; if (child.querySelector && child.querySelector('img')) { child.style.setProperty('display','none','important'); } }); }); } setTimeout(hideByChildren, 400); setTimeout(hideByChildren, 1200); // Asegurar que el marquee sea visible y el grid este oculto function fixMarqueeVisibility() { // Mostrar el marquee si fue ocultado por error document.querySelectorAll('.nexusm2-marquee-wrapper').forEach(function(w) { w.style.removeProperty('display'); w.style.setProperty('display', 'block', 'important'); }); // Ocultar solo los elementos o_grid_mode dentro de la seccion de marcas document.querySelectorAll('section').forEach(function(sec) { var h = sec.querySelector('h2, h3'); if (!h || !h.textContent.includes('Marcas que distribuimos')) return; sec.querySelectorAll('.o_grid_mode').forEach(function(g) { g.style.setProperty('display', 'none', 'important'); }); }); } setTimeout(fixMarqueeVisibility, 600); setTimeout(fixMarqueeVisibility, 1500); setTimeout(fixMarqueeVisibility, 3000);