2016-12-20 115 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 
      }