【发布时间】:2022-01-16 00:36:59
【问题描述】:
我正在尝试复制此代码:https://codepen.io/jcoulterdesign/embed/arQoER?default-tab=result&editable=true&theme-id=dark 它对我来说太先进了,所以我希望当我点击每张图片时都有一个动画并随着内容淡入淡出。 代码不是响应式的,如果我添加更多内容它不是动态的,它会停止工作,因为它基于索引 我的来源https://codepen.io/m-rio-renato/pen/dyVOyKq
$(document).ready(function (){
//Quando se carrega no Botão animação acontece
$('button').click(function(){
$(this).toggleClass('btn-anim');
});
$('.slide_horizontal__slider').click(function(){
var slide_contagem = 700;
var slide_time = 500;
var slide_index = $(this).index();
if(slide_index <= 1){
if(slide_index === 0){
$('.slide_horizontal__slider__image__content').stop().fadeOut();
$('.slide_horizontal__slider').stop().animate({'left': slide_contagem }, slide_time, function(){
$('.slide_horizontal__slider__image__content').eq(slide_index).fadeIn(slide_time);
});
}
if(slide_index === 1){
$('.slide_horizontal__slider__image__content').stop().fadeOut();
$('.slide_horizontal__slider').stop().animate({'left': 0 }, slide_time, function(){
$('.slide_horizontal__slider__image__content').eq(slide_index).fadeIn(slide_time);
});
}
}else{
if(slide_index === 2){
$('.slide_horizontal__slider__image__content').stop().fadeOut();
$('.slide_horizontal__slider').stop().animate({'left': -slide_contagem }, slide_time, function(){
$('.slide_horizontal__slider__image__content').eq(slide_index).fadeIn(slide_time);
});
}
if(slide_index === 3){
$('.slide_horizontal__slider__image__content').stop().fadeOut();
$('.slide_horizontal__slider').stop().animate({'left': -slide_contagem*2 }, slide_time, function(){
$('.slide_horizontal__slider__image__content').eq(slide_index).fadeIn(slide_time);
});
}
if(slide_index === 4){
$('.slide_horizontal__slider__image__content').stop().fadeOut();
$('.slide_horizontal__slider').stop().animate({'left': -slide_contagem*3 }, slide_time, function(){
$('.slide_horizontal__slider__image__content').eq(slide_index).fadeIn(slide_time);
});
}
}
});
});
/*
TODOS OS DIREITOS RESERVADOS 2021
Mário Renato Teixeira aka FuZz3
*/
/*================== RESET DE MARGENS ==================*/
*, html, body, h1, h2, h3, h4, h5, h6, p, figure, img, video, svg, article, main, section, aside, div, ol, ul, il, table, input, nav, footer, header
{box-sizing: border-box; margin: 0;text-decoration: none;}
/*
==============================
FONTES
==============================
*/
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@100;200;300;400;500;600;700;800&display=swap');
/*
==============================
CORES
==============================
*/
:root{
--branco: #FBFBFB;
--preto: #30323D;
--vermelho-claro: #FF8170;
--vermelho: #EE6352;
--vermelho-escuro: #A13527;
--fonte-principal: 'Work Sans';
}
/*
==============================
ELEMENTOS GERAIS
==============================
*/
body{font-family: var(--fonte-principal);font-size: 16px;width: 100%;
background-color: var(--vermelho);color: var(--branco);overflow-x: hidden;
}
h1{font-family: var(--fonte-principal);font-weight: 600;
}
h2{font-family: var(--fonte-principal);font-weight: 500;
}
h3{font-family: var(--fonte-principal);font-weight: 400;
}
h4{font-family: var(--fonte-principal);font-weight: 400;
}
h5{font-family: var(--fonte-principal);font-weight: 400;
}
h6{font-family: var(--fonte-principal);font-weight: 400;
}
p{
}
a{cursor: pointer;
}
a:hover{
}
header{
}
footer{
}
button{background-color: var(--vermelho);border: none;color: var(--branco);
font-size: 1.005em;padding: 10px 20px;margin: 20px 20px;
cursor: pointer;
}
button:hover{outline: 2px solid var(--preto);}
.btn-anim{animation-name: btn; animation-iteration-count: 1;animation-duration: 0.3s;}
@keyframes btn{
0%{transform: scale(0.9);}
100%{transform: scale(1);}
}
img{width: 100%;display: block;}
.flex{display: flex;flex-direction: row;}
.container{position: relative;width: 100%;}
/*
==============================
SLIDER
==============================
*/
.slide_horizontal{width: 100%;margin: 30px 0px;
position: absolute;top: 0;left: 0px;font-size: 1.2em;
}
.slide_horizontal h4{font-size: 1.5em;padding-bottom: 10px}
.slide_horizontal p{font-size: 1.2em;padding-bottom: 10px}
.slide_horizontal__slider{margin: 0 50px;position: relative; left: 0px;}
.slide_horizontal__slider__image{position: relative;width: 600px;height: 400px; background-color: var(--branco);}
.slide_horizontal__slider__image__content{position: absolute;top: 0;left: 0;
background-color: rgba(48,50,61,0.60);width: 100%;height: 100%;
display: none;
}
.slide_horizontal__slider__image__content span{position: absolute; top: 40%;left: 10%;}
.slide_ativo{display: block;}
.slide_frente, .slide_tras{cursor: pointer;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<section class="slide_horizontal flex">
<article class="slide_horizontal__slider">
<h3>2016</h3>
<figure class="slide_horizontal__slider__image">
<!--<img src="media/img/slider_1.jpg" alt="Design multimedia for Slotfortes in 2016">-->
<div class="slide_horizontal__slider__image__content">
<span>
<h4>Design Multimedia</h4>
<p>Developed for Slotfortes</p>
<a><button>Tell me more</button></a>
</span>
</div>
</figure>
</article>
<article class="slide_horizontal__slider">
<h3>2016</h3>
<figure class="slide_horizontal__slider__image">
<!--<img src="media/img/slider_1.jpg" alt="Design multimedia for Slotfortes in 2016">-->
<div class="slide_horizontal__slider__image__content slide_ativo">
<span>
<h4>Design Multimedia</h4>
<p>Developed for Slotfortes</p>
<a><button>Tell me more</button></a>
</span>
</div>
</figure>
</article>
<article class="slide_horizontal__slider">
<h3>2016</h3>
<figure class="slide_horizontal__slider__image">
<!--<img src="media/img/slider_1.jpg" alt="Design multimedia for Slotfortes in 2016">-->
<div class="slide_horizontal__slider__image__content">
<span>
<h4>Design Multimedia</h4>
<p>Developed for Slotfortes</p>
<a><button>Tell me more</button></a>
</span>
</div>
</figure>
</article>
<article class="slide_horizontal__slider">
<h3>2016</h3>
<figure class="slide_horizontal__slider__image">
<!--<img src="media/img/slider_1.jpg" alt="Design multimedia for Slotfortes in 2016">-->
<div class="slide_horizontal__slider__image__content">
<span>
<h4>Design Multimedia</h4>
<p>Developed for Slotfortes</p>
<a><button>Tell me more</button></a>
</span>
</div>
</figure>
</article>
<article class="slide_horizontal__slider">
<h3>2016</h3>
<figure class="slide_horizontal__slider__image">
<!--<img src="media/img/slider_1.jpg" alt="Design multimedia for Slotfortes in 2016">-->
<div class="slide_horizontal__slider__image__content">
<span>
<h4>Design Multimedia</h4>
<p>Developed for Slotfortes</p>
<a><button>Tell me more</button></a>
</span>
</div>
</figure>
</article>
</section>
</div>
【问题讨论】:
-
检查浏览器控制台是否有任何潜在的 javascript 错误。
-
你在下面看到我的回答了吗?