2017-09-12 10 views
0

ist hier ein JavaScript local counter code:local Zähler

if (typeof(Storage) !== "undefined") { 
 
    var n = localStorage.getItem('on_load_counter'); 
 
    if (n === null) { 
 
    n = 0; 
 
    } 
 
    n++; 
 
    localStorage.setItem("on_load_counter", n); 
 
    document.getElementById('counter').innerHTML = n; 
 
    if (n > 3) { 
 
    alert('3rd time'); 
 
    return; 
 
    } 
 
} else { 
 
    document.getElementById("result").innerHTML = "Sorry, your browser does not support web storage..."; 
 
}
<div id="counter"></div> 
 
<div id="result"></div>

Dieser Code nicht funktioniert. Wo ist das Problem? Wie löst man es? Wenn wir den Code zur Überprüfung der Webspeicherunterstützung entfernen, funktioniert der andere Code sehr gut.

+0

Alles geht in Ordnung, wenn Sie den Code in eine Funktion wickeln ('return' Anweisung wird nur in dem Funktionskörper erlaubt). – raina77ow

+1

@raina77ow bitte bearbeite den Code und poste ihn als Antwort, damit ich was bekommen kann und auch, ich kann diese Frage als beantwortet abschliessen. – user8575948

+0

Aber warum hat das Problem, das Sie im Code gezeigt haben, nichts mit 'typeof (Storage)' zu tun? – raina77ow

Antwort

0

Als ich versuchte, Rückkehr zu entfernen; In JavaScript funktionierte der Code perfekt. Hier ist der Code:

<script> 
    if (typeof(Storage) !== "undefined") { 
    var n = localStorage.getItem('on_load_counter'); 
    if (n === null) { 
     n = 0; 
    } 
    n++; 

    localStorage.setItem("on_load_counter", n); 
    document.getElementById('counter').innerHTML = n; 
    if (n > 3) { 
     alert('3rd time'); 
    } 
    } else { 
    document.getElementById("result").innerHTML = "Sorry, your browser does not support web storage..."; 
    } 
</script>