gpt4 book ai didi

javascript - 使用 toggleClass 只切换一个元素/div

转载 作者:行者123 更新时间:2023-11-28 16:18:46 25 4
gpt4 key购买 nike

密码在这里:https://codepen.io/shannon-creativeasset/pen/mvYPNp

我正在尝试在您单击按钮时获得翻转卡片效果。但是,当您尝试翻转一个盒子时,它会翻转所有盒子。

有谁知道解决这个问题但仍然使用按钮进行翻转?

$(document).ready(function() {

var s_round = '.s_round';

$(s_round).hover(function() {
$('.b_round').toggleClass('b_round_hover');
return false;
});

//$('.flip_box').click(function() {
//$(this).toggleClass('flipped');
//});

$(s_round).click(function() {
$('.flip_box').toggleClass('flipped');
$('.s_round').addClass('s_round_click');
$('.s_arrow').toggleClass('s_arrow_rotate');
$('.b_round').toggleClass('b_round_back_hover');
return false;
});

$(s_round).on('transitionend', function() {
$(this).removeClass('s_round_click');
$(this).addClass('s_round_back');
return false;
});
});

最佳答案

使用 this parentchildren,您必须访问被点击的元素。

$(document).ready(function() {

var s_round = '.s_round';

$(s_round).hover(function() {
$('.b_round').toggleClass('b_round_hover');
return false;
});

//$('.flip_box').click(function() {
//$(this).toggleClass('flipped');
//});

$(s_round).click(function() {
$(this).parent().parent().children(".flip_box").toggleClass('flipped');
$(this).addClass('s_round_click');
$(this).children(".s_arrow").toggleClass('s_arrow_rotate');
$(this).parent().children(".s_round").toggleClass('b_round_back_hover');
return false;
});

$(s_round).on('transitionend', function() {
$(this).removeClass('s_round_click');
$(this).addClass('s_round_back');
return false;
});
});
* {
margin: 0 auto;
padding: 0;
}

*:focus {
outline: none;
}

body {
margin-top: 70px;
background-color: #f4f4f4;
font-family: 'Raleway', sans-serif;
font-size: 62.5%;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

h1,
p,
a,
span {
color: #fff;
letter-spacing: 0.02em;
font-weight: 600;
}

h1,
p,
a {
padding-left: 40px;
}

h1 {
font-size: 2.5em;
}

p {
font-size: 1.5em;
line-height: 25px;
}

.b_button {
border: 0;
padding-bottom: 2px;
}

.container,
.flip-box,
.front,
.back {
width: 380px;
height: 350px;
}

.container,
.flip_box {
position: relative;
}

.front,
.back {
position: absolute;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
backface-visibility: hidden;
}

.container {
-moz-transform: perspective(1200px);
-webkit-perspective: 1200px;
perspective: 1200px;
}

.flip_box {
transition: all 0.5s ease-out;
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
transform-style: preserve-3d;
}

.front {
background:
rgba(32,32,32,0.83)
url(https://viewtecsigns.ca-staging.co.uk/wp-content/uploads/2019/02/Railway-Datum-Plate-viewtec-signs-railways-signs-nottingham.jpg);
}

.f_title {
padding-top: 30px;
}

.f_subline {
padding-top: 205px;
color: #B1D4E8;
}

.f_headline {
line-height: 23px;
}

.back {
background-color: #D21849;
-webkit-transform: rotateY(180deg);
-moz-transform: rotateY(180deg);
-ms-transform: rotateY(180deg);
transform: rotateY(180deg);
}

.b_headline {
padding-top: 50px;
}

.b_text {
font-size: 1.4em;
line-height: 1.4em;
padding-top: 10px;
opacity: 0.85;
}

.b_button {
position: absolute;
left: 36px;
bottom: 38px;
width: 190px;
height: 52px;
background-color: #C30C3D;
transition: all 0.3s;
cursor: pointer;
}

.b_button:hover {
background-color: #E30143;
}

.flipped {
-webkit-transform: rotateY(-180deg);
-moz-transform: rotateY(-180deg);
-ms-transform: rotateY(-180deg);
transform: rotateY(-180deg);
}

.r_wrap {
position: absolute;
right: 40px;
bottom: 38px;
}

.b_round,
.s_round {
position: absolute;
right: 0px;
bottom: 0px;
width: 52px;
height: 52px;
background-color: #D21849;
transition: all 0.2s linear;
}

.b_round {
opacity: 0;
background-color: #D21849;
}

.b_round_hover {
transform: scale(1.37);
opacity: 0.4;
}

.b_round_back_hover {
background-color: #F60044;
}

.s_round_click {
transform: scale(1.7);
}

.s_round_back {
background-color: #C30C3D;
}

.s_arrow {
width: 52px;
height: 52px;
background-image: url('https://viewtecsigns.ca-staging.co.uk/wp-content/uploads/2019/02/white-arrow-transparent-png-22.png');
background-size: 30px;
background-repeat: no-repeat;
background-position: center;
background-color: transparent;
transition: all 0.35s linear;
}

.s_arrow_click {
transform: rotate(-180deg);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class='container'>

<div class='flip_box'>

<div class='front'>
<p class='f_title'>Signage Solutions</p>
<p class='f_subline'>Lineside & Railway</p>
<h1 class='f_headline' style="font-size: 20px;">Station Platform Signs</h1>
</div>

<div class='back'>
<h1 class='b_headline'>Station Platform Signs</h1>
<p class='b_text'>Traffic management is critical for safely<br> directing vehicles through roadworks on our<br> busy road and motorway network.<br> Viewtec are specialists in the manufacture<br> and supply of traffic management signs<br>covering the whole of the UK.</p>
<button class='b_button'><span>Discover Solution</span></button>
</div>

</div>

<div class='r_wrap'>

<div class='b_round'></div>
<div class='s_round'>
<div class='s_arrow'></div>
</div>
</div>

</div>

<div class='container'>

<div class='flip_box'>

<div class='front'>
<p class='f_title'>Signage Solutions</p>
<p class='f_subline'>Lineside & Railway</p>
<h1 class='f_headline' style="font-size: 20px;">Station Platform Signs</h1>
</div>

<div class='back'>
<h1 class='b_headline'>Station Platform Signs</h1>
<p class='b_text'>Traffic management is critical for safely<br> directing vehicles through roadworks on our<br> busy road and motorway network.<br> Viewtec are specialists in the manufacture<br> and supply of traffic management signs<br>covering the whole of the UK.</p>
<button class='b_button'><span>Discover Solution</span></button>
</div>

</div>

<div class='r_wrap'>

<div class='b_round'></div>
<div class='s_round'>
<div class='s_arrow'></div>
</div>
</div>

</div>

关于javascript - 使用 toggleClass 只切换一个元素/div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54807590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com