2010-07-22 109 views
1

在颜色框插件,我有这行:jquery - 这行代码是做什么的?

.css({width: getWidth(), overflow: settings.scrolling ? 'auto' : 'hidden'}) 

对于我而言,我需要的溢出设置为“可见”。如果我这样做:

.css({width: getWidth(), overflow: settings.scrolling ? 'visible' : 'visible'}) 

然后一切工作正常。但我想知道发生了什么事情(大部分是在线的末尾)。我想这意味着像“如果设置是这样的,那么做,否则做”。是对的吗?我想我只是不明白语法是什么等等。

谢谢。

回答

1

你可以只是这样做:

.css({width: getWidth(), overflow: 'visible'}) 

是的,你说得对什么最后一行在做什么。这是一个ternary operation

+0

这就是我一直在寻找的话。 “三元”。谢谢。 – Matthew 2010-07-22 03:39:55

3

你在看什么是ternary statement。本质上它是一个If/Else的快捷方式。

settings.scrolling ? 'auto' : 'hidden'; 

是相当于

if(settings.scrolling){ 
    return 'auto'; 
} 
else{ 
    return 'hidden'; 
}