2017-02-13 6 views
0

1時間は私のコードであることを示す - 」としてポップアップがI以下は、セッションを設定し、whantユーザーがサイトに入ったときに一度だけポップアップを表示するには、しかし、私のポップアップが常に表示されているだけ

<?php 
Mage::getSingleton('core/session')->setWall('1'); 
$wall = Mage::getSingleton('core/session')->getWall(); 
if($wall =='1'){ ?> 
<script> 
jQuery(document).ready(function() { 
    jQuery('#earn-reward-box').show(); 
    //jQuery('#earn-reward-box').delay(000).fadeOut(); 
    }); 
</script> 
<div id="earn-reward-box-main" style="display:block"> 
<div id="earn-reward-box" class="xmus-box"> 
<div id="earn-reward-close">&nbsp;</div> 
<a href="<?php echo Mage::getBaseUrl()?>christmas"> 
<img src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);?>wysiwyg/deal.png" /> 
</a> 
</div> 
<div id="earn-reward-overlay">&nbsp;</div> 
</div><script> 
    jQuery('#earn-reward-close').click(function(){ 
     jQuery('#earn-reward-box-main').toggle(); 
    }); 
jQuery('#earn-reward-close').click(function(){ 
     jQuery('#earn-reward-overlay').toggle(); 
    }); 
</script> 
<?php 
Mage::getSingleton('core/session')->setWall('1'); 

} 
Mage::getSingleton('core/session')->unsWall(); 

?> 

答えて

0

設定セッション変数をdisplay:block "を表示して閉じたら、それを" display:none "に変更し、style =" hereはセッション変数 "に設定します。

+0

あなたはこれを行う方法を教えていただけますか? –

+0

私はphpとmagentoについてあまり気づいていません。だから自分自身でそれを理解しなければならない。 –

0

あなたはこの

jQuery(document).ready(function() { 
     if(window.sessionStorage.getItem('shown') === true){ 
     jQuery('#earn-reward-box').show(); 
     } 
    }); 

ようのsessionStorageに保存することで、それはすべての新しいセッションのために表示させることができ、ユーザーが見てオーバーレイ

jQuery('#earn-reward-close').click(function(){ 
      window.sessionStorage.setItem('shown', true); 
     jQuery('#earn-reward-box-main').toggle(); 
    }); 
0

をクリックしたとき、あなたはtrueにあなたの項目を設定することができますMVCから、ポップアップが既に表示されているかどうかを知るために、どこかに格納されているモデル(または状態)が必要です。

localStorage.getItem('popup-shown') === 'true' 
を:のlocalStorageが残っているので、それはまだかどうかが示されている場合、あなたが言うことができる、

localStorage.setItem('popup-shown', 'true'); 

そして、あなたがこのページを開く次の時間:たとえば、あなたは、この情報を保存する場所としてlocalStorageを使用することができます

次に、必要に応じてポップアップの動作を制御できます。

sessionStorageも問題ないが、この引用の世話をする可能性がありますのsessionStorageはWindow.localStorageに似て

のlocalStorageに保存されたデータは全く有効期限が設定されていない一方で、唯一の違いは、のsessionStorageに格納されたデータが取得、ありますページセッションが終了するとクリアされます。

https://developer.mozilla.org/en/docs/Web/API/Window/sessionStorage

関連する問題