我已经浏览了所有似乎有类似标题的其他主题,但我没有找到任何东西=(
我添加了一个console.log,它也只在第一次点击后才会触发。
这应该是一个相当简单的问题。
为什么第一次点击后才会触发事件?
谢谢!
答案 0 :(得分:3)
if
条件应位于click
处理程序内。试试这个。
$(document).ready(function() {
$('#menu').click(function() {
if($("#openCloseIdentifier").is(":visible")){
$("#menu").animate({
marginTop: "2%"
}, 500);
$("#openCloseIdentifier").hide();
}
else{
$("#menu").animate({
marginLeft: "5%"
}, 500);
$("#openCloseIdentifier").show();
}
});
});
<强> Demo 强>
答案 1 :(得分:2)
答案 2 :(得分:1)
其他点击有效,您只是看不到结果。
$("#menu").animate({
marginTop: "2%"
}, 500);
更改为:
$("#menu").animate({
marginTop: "+=2%" <--- you need at ADD 2%, not set it to 2%!
}, 500);