很抱歉打扰您。我在使用简单的 javascript if...else 语句时遇到一些问题。
我有一个按钮,如果您单击它,它将#everythingelse
推到左侧。如果您再次单击它,它应该会将 #everythingelse
返回到原始位置,但第二次单击时它不会执行任何操作。
<script type="text/javascript">
var inout = "0";
$("#mobilemenubutton").click(function () {
if (inout = "0") {
$("#everythingelse").animate({
left: '70%'
}, 500);
var inout = "1";
} else {
$("#everythingelse").animate({
left: '0%'
}, 500);
var inout = "0";
}
});
</script>
最佳答案
将代码更改为,在 if 语句中,您需要使用 double == ,这意味着这等于那。
<script type="text/javascript">
var inout="0";
$("#mobilemenubutton").click(function () {
if(inout=="0"){
$("#everythingelse").animate({ left: '70%' }, 500);
inout="1"; // removed "var"
}else{
$("#everythingelse").animate({ left: '0%' }, 500);
inout="0"; // removed "var"
}
});
</script>
但我建议你这样做。您可以使用 jQuery 的 data()跟踪状态而不是变量。
$('#mobilemenubutton').on('click', function(){
$("#everythingelse").animate({ left : !$(this).data('state') ? '70%' : '0%' }, 500);
$("#everythingelse").data('state', !$(this).data('state'));
});
关于javascript - 简单的 javascript 条件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18212441/