问题
当使用 jQuery 的 .toggle() 方法单击按钮时,我试图在两个函数之间切换,但是一旦 DOM 准备好,按钮本身就会消失。
代码
$(document).ready(function() {
$("#panel").css({"height": "0%", "bottom": "0"});
/*
var already_clicked = false;
$("button").on("click", function() {
if (already_clicked) {
$("#panel").animate({"height": "0%"}, 500);
already_clicked = false;
} else {
$("#panel").animate({"height": "100%"}, 500);
already_clicked = true;
}
});
*/
$("button").toggle(function() {
$("#panel").animate({"height": "100%"}, 500);
}, function() {
$("#panel").animate({"height": "0%"}, 500);
});
});
标记
<body>
<div id="panel"></div>
<button>Click me</button>
</body>
注意:注释块中的解决方案按预期工作,但我不确定为什么 .toggle() 不起作用。