2017-08-18 1 views
0

Ich möchte eine if Anweisung, die eine alert Funktion hat.Wenn alarmiert ja Marker wird nicht gesetzt

Wenn ich jedoch nicht die localstorage Funktion verwenden, wird die alert Box immer wieder auftauchen, aber die Markierung ändert sich. Wenn die if die localstorage Funktion verwenden, wird die Farbe nicht gesetzt.

Irgendwelche Ideen, was zu tun ist?

Alle Hilfe ist willkommen.

var alerted = localStorage.getItem('alerted') || ''; 
if (alerted != 'yes') { 
    if (value.squawk == "7500" || value.squawk == "7600" ||value.squawk == "7700") { 
     console.log(value.hex + " is squawking " + value.squawk); 
     alert(value.hex + " is squawking " + value.squawk + ". This is usually an error in transponder transmission please DO NOT alert the local authorities"); 
     markers[value.hex].setIcon(squawkerror(value)); 
    } 
} else 
+0

gespalten Dann ist es in zwei if-Anweisung statt einer? Teilen Sie es aus, so dass es nur die Warnung vermeidet, wenn das im lokalen Speicher eingestellt ist? Führen Sie die Änderung der Farbmarkierung unabhängig vom lokalen Speicherstatus durch. – somethinghere

+0

Wie speichern Sie den Wert "alerted" im "localstorage"? Und warum verwendest du keinen booleschen Wert anstelle einer Zeichenkette? –

Antwort

0

Just for alarmiert überprüfen um den Alarm und wenn nicht gesetzt, Alarm und es eingestellt. Beim nächsten Mal wird kein Alarm gesetzt und kein gespeicherter Wert wird geändert.

var alerted = localStorage.getItem('alerted') || false; 
 

 
if(value.squawk == 7500 || value.squawk == 7600 ||value.squawk == 7700){ 
 

 
    console.log(value.hex + " is squawking " + value.squawk); 
 

 
    if(!alerted){ 
 
     alert(value.hex + " is squawking " + value.squawk + ". This is usually an error in transponder transmission please DO NOT alert the local authorities"); 
 
     localStorage.setItem('alerted', true); 
 
    } 
 

 
    markers[value.hex].setIcon(squawkerror(value)); 
 

 
}

Verwandte Themen