2014-06-30 68 views
1

我從來沒有使用瀏覽器緩存之前,我無法找到一個很好的谷歌tutoiral。下面我使用jQuery插件Lightbox_me「http://buckwilson.me/lightboxme/」在頁面加載時顯示彈出窗口。任何人都可以指導我參加教程,僅在用戶首次訪問時顯示某些內容,或者是否足夠簡單,向我展示演示?這可以使用java腳本來完成嗎?顯示只彈出對話框首次訪問通過緩存

<script> 
    jQuery(function() { 
     function launch() { 
      jQuery('#sign_up').lightbox_me({centered: true, onLoad: function() { jQuery('#sign_up').find('input:first').focus()}}); 
     } 

     jQuery(document).ready(function() { 
      jQuery("#sign_up").lightbox_me({centered: true, preventScroll: true, onLoad: function() { 
       jQuery("#sign_up").find("input:first").focus(); 
      }});     
      e.preventDefault(); 
     }); 
    }); 
</script> 


<div id="sign_up" style="display:none;"> 
    pop up box! 
</div> 

我的問題是我只想要這個彈出來顯示用戶第一次訪問該頁面,然後緩存所以它不會再次顯示當用戶返回網站。

+0

只是想知道,你想調用一個Javascript函數只在第一次加載權? – felipekm

+0

是的,當頁面加載時,如果用戶以前沒有在這裏。 – user3749553

回答

2

乾脆把這個代碼在所有網頁:

<script> 
    if (!localStorage['someName']) { 
     localStorage['someName'] = 'yes'; 
     myFunction(); 
    } 
</script> 

只是爲了弄明白,這裏是約localStorage的一個很好的解釋:http://diveintohtml5.info/storage.html

+2

確保檢查哪個[支持](http://www.html5rocks.com/en/features/storage#support)可用。 – Jonast92

+0

當然可以!感謝提高它@ Jonast92 – felipekm

1

我想你可以用cookie的解決這個問題。下面是簡單的Cookie中:

<html> 
<head> 
    <script type="text/javascript"> 
    $(document).ready(function() { 
    if ($.cookie("your_cookie_name" != 1)) 
    { 
    $("div").show("show"); 
    $.cookie("your_cookie_name", "1", {expires: 1}); 
    } 
    }); 
    </script> 
    <style type="text/css"> 
    div { 
     width: 300px; 
     height: 300px; 
     display: none; 
     background-color: red; 
     border: 1px solid #ddd; 
    } 
    </style> 
</head> 
<body> 
    <div></div> 
</body> 
</html> 

但首先你必須download,包括你的HTML文檔中的jQuery插件的cookie。