2013-06-06 31 views
0

我有2個div,當我單擊圖像時,它們將被隱藏並可見。我已經通過dojo和javascript的組合來完成此操作。默認情況下,當頁面加載時, 2 div將隱藏。之後,如果我點擊圖像,div的可見。在我的問題是,當我點擊該頁面中的任何選項卡時,整個頁面將被刷新,並且div變得不可見。我想這2層div的可見即使刷新頁面或移動到其他標籤頁在頁面之前,除非我在圖像上單擊Dojo Div在刷新頁面後切換視圖

這裏是我的代碼之後:

<script type="text/javascript"> 
    function toggleDivs(){ 
    console.info("info message"); 
    if(dojo.style(dojo.byId('foo'), "display") == "block"){ 
     dojo.style(dojo.byId('foo'), "display", "none"); 
     dojo.style(dojo.byId('foo1'), "display", "none"); 
    } else { 
     dojo.style(dojo.byId('foo'), "display", "block"); 
     dojo.style(dojo.byId('foo1'), "display", "block"); 
    } 
} 
</script> 

<div class="wpthemeRight" id="foo1" style="display: none"> 
</div> 
<div class="wpthemeBanner" id="foo" style="display: none"> 
</div> 
<div id="ibm-tools" style="display: block;" aria-label="Ibm tools" class=""> 
<a href="#" onclick="toggleDivs();"><img src="./images/gear.jpg"></a> 
</div> 

請幫我在如何着手做到這一點。 在此先感謝!!!!

我試圖與節省的localStorage股利狀態,但沒有運氣

下面是代碼:

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/dojo/1.8/dojo/dojo.js"></script> 
<script type="text/javascript"> 
    function checkDivState(){ 
     localStorage["#foo1"] = true; 
     f(localStorage["#foo1"] = true) 
     { 
      dojo.style(dojo.byId('foo'), "display", "block"); 
      dojo.style(dojo.byId('foo1'), "display", "block"); 
     } 
     } 
     else 
     { 
      dojo.style(dojo.byId('foo'), "display", "none"); 
      dojo.style(dojo.byId('foo1'), "display", "none"); 
     } 
    } 
    </script> 

而且在身體,

回答

0

可以保存div在本地存儲狀態。例如,如果你想保存foo1 div狀態。

localStorage["#foo1"] = true; 

在頁面加載時,您可以檢查localStorage [「#foo1」]是否爲true,然後使div可見。

(您可以在Chrome瀏覽localStorage的 - > F12(開發人員工具) - >資源 - >本地存儲)


你checkDivState功能是錯誤的,因爲localStorage的[ 「#foo1」]將是百達真正。 讓我糾正這一點。

<script type="text/javascript"> 
function toggleDivs(){ 
    console.info("info message"); 
    if(dojo.style(dojo.byId('foo'), "display") == "block"){ 
     localStorage["#foo1"] = false; 
     dojo.style(dojo.byId('foo'), "display", "none"); 
     dojo.style(dojo.byId('foo1'), "display", "none"); 
    } 
    else { 
     dojo.style(dojo.byId('foo'), "display", "block"); 
     dojo.style(dojo.byId('foo1'), "display", "block"); 
     localStorage["#foo1"] = true; 
    } 
} 

function checkDivState(){  
    f(localStorage["#foo1"] = true) 
    { 
     dojo.style(dojo.byId('foo'), "display", "block"); 
     dojo.style(dojo.byId('foo1'), "display", "block"); 
    } 
    } 
    else 
    { 
     dojo.style(dojo.byId('foo'), "display", "none"); 
     dojo.style(dojo.byId('foo1'), "display", "none"); 
    } 
} 

,並呼籲checkDivState的文件準備好。 也許它有幫助

+0

我已經嘗試在localstorage中保存div狀態,但沒有運氣 – user1395876

+0

這裏是代碼:function checkDivState(){ localStorage [「#foo1」] = true; (localStorage [「#foo1」] =真) dojo.style(dojo.byId('foo'),「display」,「block」); dojo.style(dojo.byId('foo1'),「display」,「block」); } } else dojo.style(dojo.byId('foo'),「display」,「none」); dojo.style(dojo.byId('foo1'),「display」,「none」); } } – user1395876

+0

我添加了一些有用的代碼。請檢查它是否有效 – spring