javascript - 如何使用 .css 函数通过 jquery 切换 css

标签 javascript jquery css

该功能是通过一个按钮触发的,所以我认为每次按下它都会检查 x 相应地设置背景并将 x 置于其他状态,以便下一次按下会给出其他结果

我刚刚看到我可以在 .toggle 中使用 .css,但我仍然很好奇为什么我的解决方案不起作用

var x = 0;

function toggledark(x){
    if (x == 0) {
        $('body').css({'background-color': 'red'});
        x+=1;
        return x;
    }
    else {
        $('body').css({'background-color': 'black'});
        x-=1;
        return x;
    }
}

我以为它会切换,但我只变黑,它保持这种状态

最佳答案

不需要 x 作为整数,除非你有其他操作要做..但是当你使用 redblack 时,你可以使用它像这样

var color = 'red';   // default background color
function toggledark(){
   color = (color == 'red') ? 'black' : 'red';
   $('body').css({'background-color': color });
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<button onclick="toggledark()">Toggle</button>

如果您还有其他操作要做并且必须使用 if 语句,您可以像这样使用它

var color = 'red';   // default background color
function toggledark(){
   color = (color == 'red') ? 'black' : 'red';
   $('body').css({'background-color': color });
   if(color == 'red'){
      console.log('Red Theme');
   }
   if(color == 'black'){
      console.log('Black Theme');
   }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<button onclick="toggledark()">Toggle</button>

关于javascript - 如何使用 .css 函数通过 jquery 切换 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54245479/

相关文章:

javascript - 将表单数据插入 Jquery 数据表

css - 你如何使用不同的@font-face 样式?

jquery - Primefaces 和 themeroller firefox 开发者工具

javascript - 无法在 VUEJS 2 中的 Axios POST 方法中访问 "this"

javascript - Angular 2 触发器 'click' 使用 jquery 不工作

javascript - html高效可伸缩表格列

javascript - 如何向具有最大高度和溢出 : hidden? 的 div 的内容(包括换行符)添加省略号

javascript - Ng-Tag-Input 指令不清除值

javascript - Html().replace() : RegExp : $1 and single quote

html - 响应表格单元格到新行