538 lines
21 KiB
HTML

<style>
.back0 {
background-image: url("img/bg03.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size: cover;
}
.wrap-sw {
background: rgba(0, 211, 95, 10);
background: linear-gradient(270deg, rgba(0, 211, 95, 0.7) 0%, rgba(0, 96, 255, 0.7) 100%);
display: none;
}
.swiper-button-disabled {
opacity: 0.8;
filter: grayscale(1);
}
.card.flat {
padding: 0;
background-color: transparent;
border: none;
box-shadow: none;
}
.card.flat .card-body {
padding: 0;
background-color: transparent;
border: none;
box-shadow: none;
}
.mySwiper {
width: 100%;
height: 100px !important;
display: flex;
flex-direction: column;
justify-content: center;
}
.mySwiper .swiper-slide {
text-align: center;
font-size: 16px;
color: #fff;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
}
.mySwiper .swiper-slide .img-icon {
width: 100px;
height: 100px;
object-fit: fill;
}
.mySwiper .swiper-slide img {
width: auto;
height: 100px;
object-fit: fill;
opacity: 0.5;
-webkit-transform: scale(0.6);
transform: scale(0.6);
transition: all 0.5s ease;
}
.mySwiper .swiper-slide-active img {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
object-fit: fill;
}
.swiper-nav {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
width: 100%;
max-width: 300px;
height: 100%;
left: 0;
right: 0;
z-index: 55;
top: 0;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.swiper-custom-button-next img,
.swiper-custom-button-prev img {
height: 85px;
width: auto;
}
.swiper-custom-button-next {
border-radius: 20%;
}
.row-card {
border-radius: 15px;
background-color: rgba(255, 255, 255, .6);
box-shadow: rgba(0, 0, 0, 0.15) 0px 15px 25px, rgba(0, 0, 0, 0.05) 0px 5px 10px;
border: none;
}
.custom-card .swiper-slide {
overflow: hidden;
}
.btn-open-info {
cursor: pointer;
width: 100%;
max-width: 70px;
border-radius: 50%;
margin-left: 1em;
}
.customSwiper .swiper-slide {
height: 300px !important;
}
@media (min-width: 768px) {
.swiper-custom-button-next img,
.swiper-custom-button-prev img {
height: 150px;
width: auto;
}
.mySwiper {
height: 200px !important;
}
}
.card-with-avatar {
position: relative;
background: linear-gradient(to right, #D4F8E8, #C0F1FF);
border-radius: 12px;
padding: 2rem;
/* deja espacio para el avatar a la derecha */
padding-right: 300px;
overflow: visible;
/* para que el avatar “salga” sin recortarse */
}
/* Texto dentro de la tarjeta */
.card-body p {
margin: 0;
}
/* El círculo que contendrá la imagen */
.avatar-circle {
position: absolute;
top: 50%;
right: 0;
transform: translateY(-50%);
height: 260px;
}
/* La imagen ocupa todo el círculo y se recorta */
.avatar-circle img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.swal2-popup.swal-fullscreen {
align-items: center;
height: auto !important;
min-height: 100vh;
align-content: center;
}
.swal2-popup.swal-fullscreen .swal2-html-container {
overflow: hidden;
}
.custom-card-swal {
background-color: transparent;
border: none;
}
@media (max-width: 576px) {
.customSwiper .swiper-slide {
height: 370px !important;
}
.avatar-circle {
position: relative;
top: 0;
transform: translateY(0px);
max-width: 70%;
margin: 0 auto;
}
.avatar-circle img {
object-fit: scale-down;
}
.mySwiper .swiper-slide-active img {
padding: 9px;
}
.card-with-avatar {
position: relative;
background: linear-gradient(to right, #D4F8E8, #C0F1FF);
border-radius: 12px;
padding: 1rem;
/* deja espacio para el avatar a la derecha */
padding-right: 0;
overflow: visible;
/* para que el avatar “salga” sin recortarse */
}
}
</style>
<div class="w-100 page-sco back0 h-100 pt-4 pt-md-0" id="sco15">
<div class="container-fluid g-0">
<div class="row justify-content-center align-items-center h-100">
<div class="col-12">
<div class="row">
<div class="col-12 text-center px-4 animate__animated animate__backInLeft">
<h2 class="fw-semibold text-secondary">Componentes y beneficios</h2>
<p>En infertilidad masculina</p>
</div>
</div>
<div class="text-center wrap-sw text-white">
<div class="container-fluid">
<div class="row justify-content-center align-items-center">
<div class="col-10 col-md-12">
<div class="card custom-card flat">
<div class="card-body">
<!-- Swiper -->
<div class="swiper mySwiper">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="img-icon">
<img src="img/icon_01.png" />
</div>
</div>
<div class="swiper-slide">
<div class="img-icon">
<img src="img/icon_02.png" />
</div>
</div>
<div class="swiper-slide">
<div class="img-icon">
<img src="img/icon_03.png" />
</div>
</div>
<div class="swiper-slide">
<div class="img-icon">
<img src="img/icon_04.png" />
</div>
</div>
</div>
</div>
<!-- navegacion -->
<div class="position-absolute mx-auto swiper-nav">
<div class="swiper-custom-button-prev">
<img src="img/prev.webp" alt="" />
</div>
<div class="swiper-custom-button-next">
<img src="img/next.webp" alt="" />
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="wrap-cards mt-md-0 mt-2" style="display: none">
<div class="container">
<div class="row justify-content-center">
<div class="col-12 col-md-10 col-lg-8">
<div class="card custom-card bg-transparent border-0 rounded-0">
<div class="card-body py-0 bg-transparent border-0 rounded-0">
<!-- Swiper con validación de slides visitados -->
<div class="swiper customSwiper">
<div class="swiper-wrapper">
<div class="swiper-slide py-3 pe-3 ps-2 text-center">
<div class="d-flex h-100 align-items-center justify-content-center">
<div class="card-with-avatar">
<div class="card-body">
<p>
Conocimiento de tus <strong
class="text-azul-claro">compromisos</strong>:
diario, semanal y quincenal.
</p>
</div>
<div class="avatar-circle">
<img src="img/04.1.png" alt="Avatar ilustrado">
</div>
</div>
</div>
</div>
<div class="swiper-slide py-3 pe-3 ps-2 text-center">
<div class="d-flex h-100 align-items-center justify-content-center">
<div class="card-with-avatar">
<div class="card-body">
<p><strong class="text-azul-claro">Grito de
guerra</strong>: motivación para arrancar con
fuerza.</p>
</div>
<div class="avatar-circle">
<img src="img/04.2.png" alt="Avatar ilustrado">
</div>
</div>
</div>
</div>
<div class="swiper-slide text-center">
<div class="d-flex h-100 align-items-center justify-content-center">
<div class="card-with-avatar">
<div class="card-body">
<p><strong class="text-azul-claro">Role Play</strong>:
ejercicios para mejorar tu discurso de ventas.</p>
</div>
<div class="avatar-circle">
<img src="img/04.3.png" alt="Avatar ilustrado">
</div>
</div>
</div>
</div>
<div class="swiper-slide text-center">
<div class="d-flex h-100 align-items-center justify-content-center">
<div class="card-with-avatar">
<div class="card-body">
<p><strong class="text-azul-claro">Prospección</strong>:
ya sea por telemarketing, cambaceo tradicional, en
negocios o seguimiento.</p>
</div>
<div class="avatar-circle">
<img src="img/04.4.png" alt="Avatar ilustrado">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
$(function () {
"use strict";
// $("body").addClass("fake");
const audioh06 = CourseNav.createSound("audio/audioh06.mp3");
let swiperIcons;
let swiperCards;
audioh06.on("end", function () {
$(".wrap-sw").show();
$(".wrap-cards").show();
swiperCards = initializeSwiper(".customSwiper", onAllSlidesVisited, {
autoHeight: false, // Ajusta la altura del contenedor al slide activo
grabCursor: false, // Oculta el cursor de "mano" al pasar sobre el Swiper
allowTouchMove: false, // Deshabilita el arrastre (drag)
});
$('.swiper-custom-button-next').addClass('animate__animated animate__pulse animate__infinite');
swiperIcons = initializeSwiper(
".mySwiper",
onAllSlidesVisited,
{
slidesPerView: 5,
centeredSlides: true,
spaceBetween: 30,
grabCursor: false,
allowTouchMove: false, // Deshabilita el arrastre (drag)
navigation: {
nextEl: ".swiper-custom-button-next",
prevEl: ".swiper-custom-button-prev",
},
breakpoints: {
0: {
slidesPerView: 2,
spaceBetween: 20,
},
768: {
slidesPerView: 5,
spaceBetween: 30,
},
},
},
audioFiles,
);
// Sincronizar los Swipers
swiperIcons.on("slideChange", function () {
const currentIndex = swiperIcons.activeIndex;
swiperCards.slideTo(currentIndex);
});
});
CourseNav.audioController.stopAllSoundsAndPlay(audioh06);
const audioFiles = [
CourseNav.createSound("audio/audio11.mp3"),
CourseNav.createSound("audio/audio12.mp3"),
CourseNav.createSound("audio/audio13.mp3"),
CourseNav.createSound("audio/audio14.mp3"),
];
function onAllSlidesVisited() {
console.log("completado");
$('.swiper-custom-button-next').removeClass('animate__animated animate__pulse animate__infinite');
CourseNav.setSlideVisited();
}
$(".btn-open-info").click(function () {
const $element = $(this);
$(this).removeClass("animate__animated animate__pulse animate__infinite").addClass("visited");
const html = $($(this).data("popid")).html();
// Validación del audio
let audio = null;
const audioData = $element.data("sound");
console.log(audioData);
if (audioData) {
try {
audio = eval(audioData);
if (audio) {
CourseNav.audioController.stopAllSoundsAndPlay(audio);
}
} catch (error) {
console.error(`Error al evaluar el audio: ${audioData}`, error);
}
}
Swal.fire({
html: html,
target: "body",
customClass: "poup_class",
confirmButtonText: "Cerrar",
showConfirmButton: false,
showCloseButton: true,
closeButtonHtml: '<span class="swal2-close-x">x</span>',
showDenyButton: false,
showCancelButton: false,
allowOutsideClick: false,
allowEscapeKey: false,
focusConfirm: false,
willOpen: () => {
// $(".swal2-popup").css("padding", "0");
// $(".swal2-popup").css("box-shadow", "none");
// $(".swal2-container").css("padding", "0");
// if (audio) {
// CourseNav.audioController.stopAllSoundsAndPlay(audio);
// }
},
didOpen: null,
didRender: null,
willClose: () => {
CourseNav.audioController.stopAudio();
},
didClose: null,
didDestroy: null,
});
});
function initializeSwiper(swiperContainer, callback, options = {}, audios = [], autoPlaySound = true) {
const visitedSlides = new Set();
const container = typeof swiperContainer === "string" ? document.querySelector(swiperContainer) : swiperContainer;
const parent = container.parentElement;
if (options.navigation && options.navigation.nextEl && options.navigation.prevEl) {
options.navigation.nextEl = container.querySelector(options.navigation.nextEl)
? container.querySelector(options.navigation.nextEl)
: parent.querySelector(options.navigation.nextEl);
options.navigation.prevEl = container.querySelector(options.navigation.prevEl)
? container.querySelector(options.navigation.prevEl)
: parent.querySelector(options.navigation.prevEl);
}
const defaultParams = {
effect: "slide",
loop: false,
autoHeight: true,
};
// Combina opciones personalizadas con las por defecto
const params = {
...defaultParams,
...options,
on: {
init: function () {
visitedSlides.add(this.activeIndex);
if (audios.length > 0 && audios[this.activeIndex] && autoPlaySound) {
CourseNav.audioController.stopAllSoundsAndPlay(audios[this.activeIndex]);
}
},
slideChange: function () {
const index = this.activeIndex;
visitedSlides.add(index);
if (audios.length > 0) {
CourseNav.audioController.stopAudio();
}
if (audios.length > 0 && audios[index]) {
CourseNav.audioController.stopAllSoundsAndPlay(audios[index]);
}
if (visitedSlides.size === this.slides.length && typeof callback === "function") {
callback();
}
},
},
};
return new Swiper(container, params);
}
});
</script>