2016-12-20 73 views
0

我在网页脚本中发现,允许展开div。JS中的语法是什么意思?

function toggle(sDivId) { 
    var oDiv = document.getElementById(sDivId); 
    oDiv.style.display = (oDiv.style.display == "none") ? "block" : "none"; 
} 

请告诉我的意思是这条线:(oDiv.style.display == "none") ? "block" : "none";

+0

[条件(三元)运算符(https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Conditional_Operator) – Turnip

回答

-1

这是一个ternary operator,或 “内联,如果” 因为有人称之为

oDiv.style.display = (oDiv.style.display == "none") ? "block" : "none"; 

是一样的:

if(oDiv.style.display == "none") { 
    oDiv.style.display = "block"; 
} else { 
    oDiv.style.display = "none"; 
} 
+0

如此简单,感谢:) – gfhgfhfgh

-1

这是运营商ternary。更多信息here

条件? expr1:expr2

如果条件为真,则运算符返回expr1的值; 否则,它返回expr2的值。

基本上是If else的简称。

if(oDiv.style.display == "none")) { 
oDiv.style.display = "block" } 
else { 
oDiv.style.display = "none";} 
-1

这是一个三元运算符,它基本上是说下面...

是显示= “无”?如果是这样,将 “块”,如果不设置 “无”

简而言之...

条件为真:假;

function toggle(sDivId) { 
      var oDiv = document.getElementById(sDivId); 
      oDiv.style.display = (oDiv.style.display == "none") ? "block" : "none"; 
      // Is this element display set to none? ? yes ? no 
      }