2016-09-08 4 views
-1

Hallo Ich habe das Problem, dass ich die Variable imgNotSet in meiner if-Anweisung der openImage Funktion nicht aufrufen kann. Meine Frage ist, muss ich meiner Variablen einen anderen Spielraum geben, um sie aufzurufen oder was habe ich falsch gemacht?Aufruf einer Variablen in einer if-Anweisung innerhalb einer Funktion

var imgNotSet = true; 
 

 
function openImage() { 
 
\t if (imgNotSet) { 
 
\t \t var lightViewImg = document.createElement("IMG"); 
 
\t \t document.body.appendChild(lightViewImg); 
 
\t \t document.getElementsByTagName("img")[0].setAttribute("src","imgplaceholder"); 
 
\t \t var imgNotSet = false; 
 
\t } else { 
 
\t \t console.log("Img already set"); 
 
\t } 
 
}

+0

"Anruf" es? Du weist es zu. – Bergi

+0

Zeigen Sie uns, wie und wann Sie 'openImage()' aufrufen und wo Sie erwarten, dass 'imgNotSet' einen anderen Wert hat, als er tatsächlich hat. – Bergi

Antwort

7

Meine Frage ist, ich meine Variable einen besonderen Rahmen tun müssen, es zu nennen

Nein, Sie tun das bereits geben, und das ist das Problem.

var imgNotSet = false; 

Sie haben eine andere Variable mit dem gleichen Namen erstellt, sondern lokal auf die Funktion scoped, hier. Tu das nicht. Entfernen Sie die var.

Verwandte Themen