PageSourceSearch

https://pagina10.com/web/wp-content/plugins/p10-redes-sociales/public/js/p10rs-redes.js?ver=1.1.1

js pagina10.com collected 2026-10-02 12:42:07 UTC 1,949 bytes, 68 lines download raw bytes

1/**
2 * P10 Redes Sociales — mini-carrusel de Instagram.
3 * Muestra una publicación a la vez con navegación horizontal por flechas
4 * (o deslizando con el dedo en móvil). Sin avance automático.
5 */
6( function () {
7	'use strict';
8
9	function iniciarSlider( slider ) {
10		var viewport = slider.querySelector( '.p10rs-ig-viewport' );
11		var btnPrev  = slider.querySelector( '.p10rs-ig-prev' );
12		var btnNext  = slider.querySelector( '.p10rs-ig-next' );
13		var contador = slider.querySelector( '.p10rs-ig-contador' );
14		var total    = slider.querySelectorAll( '.p10rs-ig-slide' ).length;
15
16		if ( ! viewport || ! btnPrev || ! btnNext ) {
17			return;
18		}
19
20		// Con una sola publicación no hace falta navegar.
21		if ( total <= 1 ) {
22			btnPrev.style.display = 'none';
23			btnNext.style.display = 'none';
24			if ( contador ) {
25				contador.style.display = 'none';
26			}
27			return;
28		}
29
30		function indiceActual() {
31			var ancho = viewport.clientWidth;
32			return ancho > 0 ? Math.round( viewport.scrollLeft / ancho ) : 0;
33		}
34
35		function actualizar() {
36			var i = indiceActual();
37			btnPrev.disabled = i <= 0;
38			btnNext.disabled = i >= total - 1;
39			if ( contador ) {
40				contador.textContent = ( i + 1 ) + ' / ' + total;
41			}
42		}
43
44		btnPrev.addEventListener( 'click', function () {
45			viewport.scrollBy( { left: -viewport.clientWidth, behavior: 'smooth' } );
46		} );
47		btnNext.addEventListener( 'click', function () {
48			viewport.scrollBy( { left: viewport.clientWidth, behavior: 'smooth' } );
49		} );
50
51		viewport.addEventListener( 'scroll', actualizar, { passive: true } );
52		window.addEventListener( 'resize', actualizar );
53		actualizar();
54	}
55
56	function iniciar() {
57		var sliders = document.querySelectorAll( '[data-p10rs-slider]' );
58		for ( var i = 0; i < sliders.length; i++ ) {
59			iniciarSlider( sliders[ i ] );
60		}
61	}
62
63	if ( 'loading' === document.readyState ) {
64		document.addEventListener( 'DOMContentLoaded', iniciar );
65	} else {
66		iniciar();
67	}
68} )();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.