javascript - 简单的 javascript 条件不起作用

标签 javascript jquery if-statement

很抱歉打扰您。我在使用简单的 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/

相关文章:

javascript - 如何动态调整莫里斯折线图y轴

javascript - 需要在屏幕调整大小时更改 div 输出和 javascript

jquery - 确定单击的单元格是否为 fullCalendar 中的全天事件

javascript - 拖放并计算宽度

javascript - 为什么我的 JavaScript 代码收到“"No ' Access-Control-Allow-Origin' header is present on the requested resources”错误,而 Postman 却没有?

if 语句中的 javascript 迭代

javascript - 在纯js中占满整个页面的div之间切换

javascript - JS 陷入 while 循环

php - 如何在 TPL 文件中的 prestashop 1.7 中检测 smarty 中的设备?

java - 除以零而不出现 ArithmeticException