[Javascript] identico carousel con effetto fade: in una pagina va in un'altra no, mistero?

WmbertSea

Utente Attivo
28 Nov 2014
148
20
28
ma com'è possibile? il codice è IDENTICO!!!
Ciao, faccio una breve premessa:

Non ti nego che il tuo stupore mi fa sorridere. Anche se quel pezzetto di codice è identico, i due contesti in cui lo stai usando sono certamente differenti; le variabili in gioco sono parecchie per cui non mi meraviglierei se qualcosa dovesse funzionare diversamente. Di certo bisogna analizzare le due situazioni nei due diversi contesti per capire dove sta la causa del problema. Sarebbe un po' come dire "prendo lo scooter tutti i giorni per andare a lavoro e ci impiego 10 minuti, ma oggi ne ho impiegati 30; eppure lo scooter che ho usato è lo STESSO IDENTICO!!! ma com'è possibile? mistero... Forse ci sarebbe da chiedersi "il tragitto era lo stesso? il traffico era lo stesso? il manto stradale? pioggia, ghiaccio, neve? non è che ho perso tempo in qualcos'altro a prescindere dal fatto che lo scooter fosse lo stesso di sempre? ho dovuto attendere che passasse qualche corteo? sono stato coinvolto in un qualche incidente? mi si è bucata una gomma? ho sbrodato? sono dovuto tornare di corsa a casa perché ieri ho mangiato dal messicano?... ecc.". Capisci bene che ogni cosa va sempre analizzata nel proprio contesto.

Arrivando al dunque:

Esaminando le due pagine ho constatato infatti che stai usando differenti versioni di Bootstrap. In particolare stai usando la versione 3.1.1 nella pagina in cui il fade funziona, mentre la 3.3.1 (quindi più recente) nella pagina in cui riscontri il problema.

Ora, quel carousel è integrato in questo framework e, sebbene tra una versione e l'altra resti uguale a livello visivo, ciò che cambia per le versioni più recenti è il modo con cui sono gestiti i relativi elementi, in particolare cambia qualche regola del CSS. In linea di massima, rispetto alle versioni precedenti, è stata aggiunta la proprietà transform a cui è applicata la funzione translate3d che, da ciò che ho letto, favorisce una migliore gestione delle animazioni sui moderni browser.

Detto ciò, tu stai applicando del CSS personalizzato per forzare un tipo di effetto (fade) che non è quello standard (slide) per il quale è stato studiato questo applicativo. Per tale motivo, sulle versioni recenti, il tuo CSS aggiuntivo ha qualche problema.

Se fai qualche ricerca tipo "bootstrap carousel fade instead of slide" puoi trovare diverse discussioni su questo stesso argomento e alcune soluzioni.

Senza andare lontano puoi comunque risolvere in maniera relativamente semplice applicando un'ulteriore regola al tuo CSS in modo da "annullare" i valori della proprietà transform.

Prova ad aggiungere questo dentro il selettore .carousel .item:
Codice:
-webkit-transform: none !important;
transform: none !important;
Dovresti risolvere.
 

theseo

Utente Attivo
22 Feb 2017
85
4
8
57
cacchio... complimenti per la competenza, è tutto proprio come dicevi tu
si sapevo che i due bootstrap erano non proprio identici e in effetti, per esclusione, potevo arrivarci
ma mai sarei arrivato ad individuare il problema nella proprietà transform
che invidia...
d'altronde non è che posso pretendere troppo da me stesso--> sono un self made man informatico over 55 :))
grazie ancora e tanti complimenti, ciao