2016-12-20 3 views
0

Ich habe in Web-Skript gefunden, erlaubt abrollen div.Was bedeutet diese Syntax in JS?

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

Was diese Zeile bedeuten: (oDiv.style.display == "none") ? "block" : "none";

+0

[Conditional (ternäre) Operator] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Conditional_Operator) – Turnip

Antwort

-1

es ist ein ternary operator oder "inline wenn", wie manche es

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

das gleiche wie:

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

so einfach, danke :) – gfhgfhfgh

-1

Diese ist ternary Betreiber. Weitere Informationen here

Zustand? expr1: expr2

Wenn die Bedingung wahr ist, gibt der Operator den Wert von expr1 zurück; Andernfalls gibt es den Wert von expr2 zurück.

Grundsätzlich eine kurze Hand von If else Aussage.

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

Dieser ein ternärer Operator ist es im Grunde sagt die folgende ...

Display = "none" ist? Wenn ja, stellen Sie "Block", wenn nicht gesetzt "none"

Einfach gesagt ...

Bedingung erfüllt ist:? False;

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 
      } 
Verwandte Themen