1

好的,希望这是一个非常直截了当的问题。正如标题所暗示的,在 if else 语句中使用 opacity 属性时是否可以定位它?如果是这样,您将如何编写代码?

你能做这样的事情,还是我走远了?

if ($("#someObject").css().opacity == 1) {
    // do this
} else if {$("#someObject").css().opacity == 0){
    // do this instead
};
4

2 回答 2

3

如果您使用的是 jQuery(看起来就像是),那么您就快到了:

if ($("#someObject").css('opacity') == 1) {
  // do this
} else if ($("#someObject").css('opacity') == 0){
  // do this instead
};

将是正确的代码。

为了更具体地说明这是做什么的,.css()jQuery 中的方法在与单个参数一起使用时是元素上计算的 CSS 的访问器 - 传入 CSS 规则,您将返回设置值。

如果我要进行任何更改,那么首先要缓存该值,这样您就不会进行可能的多项选择/评估调用。例如

var setOpacity = $("#someObject").css('opacity');
if (setOpacity == 1) {
  // do this
} else if (setOpacity == 0){
  // do this instead
};
于 2012-08-19T22:14:58.217 回答
0

根据 Robin 的回答,您可以使用switch

switch($("#someObject").css('opacity')){
  case 1:
    // do this
    break;
  case 0:
    // do this instead
    break;
}
于 2012-08-20T01:15:08.760 回答