好吧,所以我有兩頁,一頁包含一個可點擊div的表格,其中有很多,當按下1時它會導致頁面2包含表單其中用戶輸入存儲在本地存儲器中的信息,現在我試圖實現的是更改第1頁上的DIV的顏色,如果表單已成功提交,我的意思是永久性更改。
這是我第1頁使用的代碼:從另一個頁面上的localStorage改變div的顏色不起作用
window.onload = function() {
myCustomColor = 'red';
localStorage.setItem('myDataStorage', myCustomColor);
var d = document.getElementsByClassName("circleBase type1");
for(var i = 0; i < d.length; i++) {
d[i].onclick = function() {
window.open("EnterInformation.html");
}
}
}
與此代碼我保存的顏色到本地存儲。現在用於測試目的我添加了一個ID,只是一個DIV id='L1'
,所以我想通過.getItem
獲得的項目是這樣的:
function changeColor() {
var myLoadedColor = localStorage.getItem('myDataStorage');
document.getElementById('L1').style.backgroundColor = myLoadedColor;
<input type="submit" name="appointment" value="" class="btn-warning" onclick="SaveInfo(); closeSelf(); changeColor()" />
什麼也沒有發生? 現在我想看看它是否通過嘗試更改第2頁(EnterInformation.html
)上div的顏色來獲取存儲的顏色,它可以工作,但它會更改div的顏色一秒鐘,然後將其恢復爲默認值,爲什麼這是怎麼回事?有什麼建議?
我想發佈的原始問題是可以從另一個頁面更改點擊的div的顏色,但這比我想象的要複雜得多!
P.S.兩個頁面在不同的選項卡上同時打開。
你叫'changeColor'? – epascarello
是的,我在按鈕的onclick事件中調用它! – MicroDev
我編輯了這個問題。 – MicroDev