Ich fing gerade an, Phonegap + jQuery Mobile und HTML5 zu studieren, also verliere nicht deine Nerven mit meiner Idiotie!Lesen und Schreiben von localStorage?
Kann mir jemand sagen, warum das nicht funktioniert? Wenn ich eine Variable von localStorage verwende, erhalte ich nur einen leeren Bildschirm, wenn ich den Knopf drücke, aber wenn eine variable Temperatur = "100" verwendet wird, funktioniert es gut. Android 4.1.
<script type="text/javascript" charset="utf-8">
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
window.localStorage.setItem("temperature", "100");
var temperature = window.localStorage.getItem("temperature");
}
</script>
<div data-role="content">
<p>Working or not?</p>
<button onclick="myFunction()">Try it</button>
<p id="testi"></p>
<script type="text/javascript">
function myFunction() {
//var temperature = "100";----> This is working!
document.getElementById("testi").innerHTML = temperature;
}
</script>
</div>
Eine andere Frage: Wie Variablen zwischen Seiten in Windows Phone umgehen? Sie unterstützen localStorage nicht, gibt es also eine andere Möglichkeit, dies zu handhaben, wenn Sie keine db-Verbindung haben?
Danke!
Sami
Ich habe keine Erfahrung mit Phonegag oder Android, aber ich bin mir ziemlich sicher, dass es ein Bereich/Schließung Problem ist. Sie definieren 'var temperature' innerhalb der 'onDeviceReady'-Funktion, sie wird nur innerhalb dieses Bereichs definiert. Sie können es nicht innerhalb der 'myFunction' verwenden, da diese Variable einen völlig anderen Gültigkeitsbereich hat. Ich würde dies als Antwort einreichen, aber wieso hat niemand in 35 Minuten geantwortet? –
U kann das nur als Antwort einreichen! Gibt es eine Möglichkeit, "globale" Variablen in JavaScript zu erstellen, denke ich. Ich muss es herausfinden. Danke vielmals! – Sami
Ja, Bryan hat gerade ein Beispiel gemacht. Ich werde etwas zu seiner Antwort hinzufügen und da ich etwas müde bin, eine "vollständige" Antwort zu geben. ':)' –