簡體   English   中英

如何在頁面刷新或單擊瀏覽器后退按鈕后隱藏 div

[英]How to hide div after page refresh or click browser back button

我在下面有彈出代碼,我想為每個用戶顯示這個彈出窗口,即使刷新頁面或訪問另一個站點也只顯示一次。

我嘗試了一些代碼,但它對我不起作用。

 <div id="popup"> <div id="close">&times;</div> MY CONTENT </div> <script type="text/javascript"> window.addEventListener("load", function(){ setTimeout( function open(event){ document.querySelector("#popup").style.display = "block"; }, 0000 ) }); document.querySelector("#close").addEventListener("click", function(){ document.querySelector(".popup").style.display = "none"; }); </script>

使用 cookie 來記住。

window.addEventListener("load", function(){
    //check if cookie exists. 
    if (!document.cookie.includes("popup")) {
        setTimeout(
            function open(event){
                document.querySelector("#popup").style.display = "block";
                //set cookie since it didn't exist previously
                document.cookie = "popup=true" 
            },
            0000 
    })
});


document.querySelector("#close").addEventListener("click", function(){
    document.querySelector(".popup").style.display = "none";
});

我認為使用 localstorage 可以解決問題。 它在這里不起作用,因為堆棧不允許本地存儲

 if(localStorage.getItem('closeMe') == 'yes')document.getElementById("popup").classList.add("closeMe"); document.querySelector("#close").addEventListener("click", function(){ localStorage.setItem('closeMe', 'yes'); if(localStorage.getItem('closeMe') == 'yes')document.getElementById("popup").classList.add("closeMe"); });
 .closeMe{ display:none; }
 <div id="popup"> <div id="close">&times;</div> MY CONTENT </div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM