我有以下代码:
HTML:
<div id="clickme">
Click me :-)
</div>
<div id="info" style="background:red; width:100%; height:100px; margin-bottom:-100px; z-index:20; position:absolute; bottom:0px;">
Stay, damn!
</div>
JavaScript的:
$('#clickme').click(function() {
$('#info').animate({
marginBottom: 'toggle'
},{
duration:500
});
});
获取
显然,只要点击#info DIV
,我就希望#clickme DIV
显示/消失。它按预期工作,但由于jQuery将其CSS #info DIV
属性设置为display
,因此none
在动画后消失。
如何告诉jQuery停止隐藏我的DIV
?
答案 0 :(得分:7)
我建议使用.slideToggle
:
$('#clickme').click(function() {
$('#info').slideToggle(500);
});
答案 1 :(得分:2)
javascript代码
$('#clickme').toggle(
function () {
$('#info').animate({
height:"0px"
}, 500);
},
function () {
$('#info').animate({
height:"100px"
}, 500);
});
答案 2 :(得分:0)
用这个替换你的点击功能:
$('#clickme').click(function() {
var whichSetting = $('#info').css('marginBottom');
if(whichSetting == '-100px') {
whichSetting = '0px';
}
else {
whichSetting = '-100px';
}
$('#info').animate({
marginBottom: whichSetting
},{
duration:500
});
});