jquery三元条件运算符中的多个条件

时间:2013-01-30 09:11:55

标签: javascript jquery ternary-operator conditional-operator

我想在jquery中编写三元条件运算符,其中条件由jquery变量设置。我的脚本仅针对特定条件切换类。在我的脚本变量中来自其他设置。

jquery的:

<script type="text/javascript">
$(document).ready(function() {
  $("#my_div")
    .removeClass("horizontal vertical")
    .addClass( my_color == 'red'  ? 'horizontal' : 'vertical');
});
</script>

my_color是jquery变量,它可能从red,green,blue,black,white or silver一次有一个值。

如果my_color为红色,蓝色或绿色,我想设置类水平,其他三个值设置为垂直类。任何人都可以帮我写上面jquery的简化三元运算符吗?

1 个答案:

答案 0 :(得分:3)

在操作员的条件部分中使用或运算符。你会的

<script type="text/javascript">
  $(document).ready(function() {
    $("#my_div")
        .removeClass("horizontal vertical")
        .addClass( my_color == 'red' ||  my_color == 'blue' ||  my_color == 'green'  ? 'horizontal' : 'vertical');
  });
</script>
 $("#my_div")

如果你有很多颜色,你可以把它们放在阵列中并在条件下使用它。

 $("#my_div")
 .removeClass("horizontal vertical")
 .addClass( ['red', 'blue', 'green', 'gray'].indexOf(my_color) != -1 ? 'horizontal' : 'vertical');