我剛開始學習Phonegap + jQuery Mobile和HTML5,所以不要因爲我的白癡而放鬆你的神經!從localStorage讀取和寫入?
有人可以告訴我爲什麼這不起作用嗎?當我使用localStorage中的變量時,按下按鈕時只會看到一個空白屏幕,但當使用變量temperature =「100」時,它工作正常。 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>
另一個問題:如何處理Windows Phone頁面之間的變量?他們不支持localStorage,那麼如果你還沒有db連接,還有另一種方法來處理這個問題嗎?
謝謝!
薩米
我沒有phonegag或android的經驗,但我很確定這是一個範圍/關閉問題。你在'onDeviceReady'函數內定義'var temperature',它只在該範圍內定義。你不能在'myFunction'中使用它,因爲這個變量有一個完全不同的範圍。我會將此作爲答案提交,但35分鐘內沒有人回答這個問題? – 2012-07-15 10:12:03
你可以提交,作爲答案!有沒有辦法在JavaScript中創建「全局」變量,我認爲是這樣。我需要弄明白。非常感謝! – Sami 2012-07-15 10:14:29
是的,布萊恩只是一個例子。我會在他的回答中添加一些內容,因爲我有點疲憊,無法做出「完整」的答案。 ':'' – 2012-07-15 10:15:27