2017-03-02 9 views
0

これは、セッションごとにモーダルポップアップを1回だけ使用するためのコードです。私の問題は、ホームページにアクセスするたびにdivが表示されることです。代わりに、セッションごとに1回のみdivを表示したいと思います。私はそれをクッキーで修正しようとしましたが、うまくいきませんでした。モーダルニュースレターポップアップをセッションごとに1回だけ表示するにはどうすればいいですか?

<script> 
    if (!Cookies.get('popup')) { 
     setTimeout(function() { 
      $('#myModal').modal(); 
     }, 600); 
    } 
    $('#myModal').on('shown.bs.modal', function() { 
     // bootstrap modal callback function 
     // set cookie 
     Cookies.set('popup', 'valid', { expires: 3, path: "/" }); // need to set the path to fix a FF bug 
    }) 
</script> 
+1

使用セッションストレージを。最初にフラグをfalseに設定し、次にモーダル表示でtrueに設定すると、フラグがtrueであるかどうかを確認し、そうであればモーダルを表示しません – gavgrif

答えて

0

クッキーを設定します。

$(document).ready(function() { 
if ($.cookie('noShowWelcome')) $('.yourDivClass').hide(); 
else { 
    $("#close-welcome").click(function() { 
     $(".yourDivClass").fadeOut(1000); 
     $.cookie('noShowWelcome', true);  
    }); 
    } 
}); 

jQuery.cookieのjavascriptファイルを含める必要があります。

Download jQuery.cookie

ホープこのことができます:)モーダルが示されているか否かのフラグを格納する