我创建了一个函数,我想要一个 div 来增加高度和不透明度,当再次点击时它应该返回到它的原始状态所以我使用切换函数来做到这一点现在问题是当页面加载时按钮消失了
$(document).ready(function() {
$('#cm_now').toggle(function() {
$('.search_bx_ar').css({
'opacity': '1'
});
$('.search_bx_ar').css({
'height': '40px'
});
});
});
.search_bx_ar {
position: relative;
margin: 0 0 10px 0;
width: 100%;
opacity: 0;
height: 0px;
transition: ease-in-out all .5s;
-webkit-transition: ease-in-out all .5s;
-moz-transition: ease-in-out all .5s;
}
.compare_sr_btn {
float: right;
width: 25%;
padding-left: 15px;
margin: 15px 0 10px 0;
}
.compare_sr_btn>#cm_now {
background-color: #2b7f7f;
color: #fff;
border: none;
height: 40px;
line-height: 40px;
width: 100%;
font-size: 12px;
text-transform: uppercase;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="compare_sr_btn">
<input type="button" id="cm_now" value="Compare Now" />
</div>
<div class="search_bx_ar">
<input class="form-control top_search" id="data_mid" autocomplete="off" onkeyup="autocompl();" type="text" placeholder="Search">
</div>
最佳答案
Toggle 并不像您认为的那样。切换用于隐藏或显示元素。由于您在页面加载后立即运行该函数,因此该按钮会立即隐藏并带有漂亮的小动画。
看看这是否符合您的要求:
var buttonState = 0;
$(document).ready(function() {
$('#cm_now').click(function() {
if(buttonState == 0) {
$('.search_bx_ar').css({'opacity': '1'});
$('.search_bx_ar').css({'height' : '40px'});
} else {
$('.search_bx_ar').css({'opacity': '0.5'});
$('.search_bx_ar').css({'height' : '20px'});
}
buttonState = 1 - buttonState; //a clever way to toggle between 0 and 1
});
});
.search_bx_ar {
position: relative;
margin: 0 0 10px 0;
width: 100%;
opacity: 0;
height: 0px;
transition: ease-in-out all .5s;
-webkit-transition: ease-in-out all .5s;
-moz-transition: ease-in-out all .5s;
}
.compare_sr_btn {
float: right;
width: 25%;
padding-left: 15px;
margin: 15px 0 10px 0;
}
.compare_sr_btn > #cm_now {
background-color: #2b7f7f;
color: #fff;
border: none;
height: 40px;
line-height: 40px;
width: 100%;
font-size: 12px;
text-transform: uppercase;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="compare_sr_btn">
<button id="cm_now">Compare Now</button>
</div>
<div class="search_bx_ar">
<input class="form-control top_search" id="data_mid" autocomplete="off" onkeyup="autocompl();" type="text" placeholder="Search">
</div>
关于javascript - jquery 切换不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44714503/