Jump to content

Archived

This topic is now archived and is closed to further replies.

dedindol

Modal só abrir a primeira vez

Recommended Posts

Boa noite,

estou tentando adaptar o modal ao magento para fazer abrir uma janela na pagina inicial da minha loja para o cliente se cadastrar, porém, a janela abre em toda a navegação, sempre que clico em qualquer lugar da loja abre a janela do modal.

 

o código que estou utilizando é esse:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>jQuery Modal Window</title>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js"></script> 
<script type="text/javascript">

function open_modal( id ){
	var maskHeight = $(document).height();
	var maskWidth = $(window).width();

	$('#mask').css({'width':maskWidth,'height':maskHeight});

	$('#mask').fadeIn(1000);
	$('#mask').fadeTo("slow",0.8);	

	//Get the window height and width
	var winH = $(window).height();
	var winW = $(window).width();

	$(id).css('top',  winH/2-$(id).height()/2);
	$(id).css('left', winW/2-$(id).width()/2);
	$(id).fadeIn(2000);
};
$(document).ready(function() {	

	$('a[name=modal]').click(function(e) {
		e.preventDefault();
		open_modal( $(this).attr('href') );
	});

	open_modal( '#dialog2' );//abrindo o div#modal ao carregar a página

	$('.window .close').click(function (e) {
		e.preventDefault();

		$('#mask').hide();
		$('.window').hide();
	});		

	$('#mask').click(function () {
		$(this).hide();
		$('.window').hide();
	});
});</script>
<style type="text/css">
body {
font-family:verdana;
font-size:15px;
}

a {color:#333; text-decoration:none}
a:hover {color:#ccc; text-decoration:none}

#mask {
  position:absolute;
  left:0;
  top:0;
  z-index:9000;
  background-color:#000;
  display:none;
}
  
#boxes .window {
  position:absolute;
  left:0;
  top:0;
  width:440px;
  height:200px;
  display:none;
  z-index:9999;
  padding:20px;
}

#boxes #dialog1 {
  width:375px; 
  height:203px;
}

#boxes #dialog2 {
  background:url(http://www.minutinhos.com/skin/frontend/em0006/default/images/modal/notice.png) no-repeat 0 0 transparent; 
  width:326px; 
  height:229px;
  padding:22px 0 20px 25px;
}
.close{display:block; text-align:right; color:#FF0000;}

</style>
</head>
<body>
<div id="boxes">
<!-- Janela Modal com Bloco de Nota -->
<div id="dialog2" class="window">
<a href="#" class="close">Fechar [X]</a><br />
<strong>Cadastre-se?</strong><br />
Ao se cadastrar você ganha descontos exclusivos, não perca tempo!<br /><br /><br />
<div align="right"><a href="http://www.minutinhos.com/customer/account/create/"><img src="http://www.minutinhos.com/skin/frontend/em0006/default/images/modal/cadastrar.png"></a></div>
</div>
<!-- Fim Janela Modal com Bloco de Nota -->

<!-- Máscara para cobrir a tela -->
  <div id="mask"></div>

</div>
</body>
</html>

Eu sei que tenho que armazenar em coockie, até achei um código que funcionou, ele abre uma tela cheia com dois botões e independente de qual botão você clica, ele armazena a informação de que já abriu a janela neste computador e não abre mais...

 

o código é:

 

<script>
function menor_idade(){
document.cookie="aceita_conteudo_pagina:sim";
window.location = location.href;
}

function maior_idade(){
location.href='http://www.minutinhos.com/index_.php/customer/account/create/'
document.cookie="aceita_conteudo_pagina:sim";
}
if(document.cookie.indexOf("aceita_conteudo_pagina")<0){
var home_principal = $(".cms-home")
home_principal[0].innerHTML="<h1 style='font-size: 28px; margin: 30px auto; text-align: center;'>CADASTRE-SE E APROVEITE!<br />São diversas ofertas exclusivas!</h1>";
home_principal[0].innerHTML+="<div id='master' style='height: 40px; text-align: center;'><span style='padding: 5px; background: #0096e5; color: #FFF; font-size: 16px; cursor: pointer;' onclick='maior_idade()'>FAZER CADASTRO</span><span style='margin-left: 40px; padding: 5px; background: #2e2c2d; color: #FFF; font-size: 16px; cursor: pointer;' onclick='menor_idade()'>IR PARA A LOJA</span></div>"

}
</script>

Minha dúvida é,

como colocar o armazenamento do coockie deste ultimo código no primeiro que tem o HTML completo de forma que o modal só abra uma vez?

 

Minha loja é: www.minutinhos.com caso queiram ver como está o modal.

 

Desculpem se não for aqui que deveria postar, não achei nenhum local mais adequado.ob

 

Obrigado.

Share this post


Link to post
Share on other sites

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.