Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Daniela Pereira

Controle de banner com cookie de usuario

Recommended Posts

Buenas...

 

Estou com o trampo de fazer um banner (pushdown) que expande automaticamente,porém apenas uma vez por dia / por usuário. Isso será feito em cookie, porém não sei como.

Imagino que terá um código no flash e algo em JavaScript no site.

Alguém pode me dar uma luz de como fazer, por favor?

Agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode usuar SharedObject em vez de javascript. Deixo um exemplo bem "mastigado" para que você possa ajustar ao seu caso:

var dados_so:SharedObject = SharedObject.getLocal( "dados" );

dados_so.data.contador = 1;
dados_so.data.nome = "nome_usuario";

dados_so.flush();

trace( dados_so.data.contador+" = "+dados_so.data.nome );

BS,

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código você irá pôr no Flash... Mas vamos a um outro exemplo(aproveitando que estou com um pouco mais de tempo)

var dados_so:SharedObject = SharedObject.getLocal( "dados" );
var data_dt:Date = new Date();
//Aqui checamos se o banner foi expandido. Caso não, permite expandir e grava o cookie. Caso contrário, não faz nada.
banner_mc.onRollOver = function(){
    
    if( dados_so.data.dia_mes == undefined || dados_so.data.dia_mes != data_dt.getDate()+":"+(data_dt.getMonth()+1) ){
        
dados_so.data.dia_mes = data_dt.getDate()+":"+(data_dt.getMonth()+1);
dados_so.flush();
//Aqui você inicia a animação ou o codigo que desejar...

    } else {
        
        //Aqui não faz nada
        
    };
    
}

Se tiver dúvidas, não demore para responder para que eu possa tentar te auxiliar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@ DesenvolvedorRoger

 

Aproveitando a oportunidade, é possível um exemplo em AS3?

 

É possível definir um getHour, digamos, de 2 horas, e após ativar o "cookie" novamente?

 

 

Ando pesquisando cookies em JS, desconhecia a opção pelo ActionScript.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em Action Script 3 ficaria assim:

var dados_so:SharedObject = SharedObject.getLocal( "dados_db" );
var data_dt:Date = new Date();

//Aqui checamos se o banner foi expandido. Caso não, permite expandir e grava o cookie. Caso contrário, não faz nada.
banner_mc.addEventListener( MouseEvent.MOUSE_OVER, function(){
    
    if( dados_so.data.dia_mes == undefined || dados_so.data.dia_mes != data_dt.getDate()+":"+(data_dt.getMonth()+1) ){
        
dados_so.data.dia_mes = data_dt.getDate()+":"+(data_dt.getMonth()+1);
dados_so.flush();
//Aqui você inicia a animação ou o codigo que desejar...

    };
    
} );

 

*No seu caso Elektra, basta criar um novo objeto Date e incrementar a hora.
Feito isso, grave o 'cookie' e crie uma rotina para monitorar o intervalo. Quando esse intervalo expirar grave novamente o novo valor.

var data_atual_dt:Date = new Date();
var data_nova_dt:Date = new Date();
//Incrementando a hora atual
data_nova_dt.setHours( data_atual_dt.getHours() + 2 );

//Agora monitoramos o intervalo
var tempo:Timer = new Timer( 1000 );

function checaIntervalo( e:TimerEvent ){
   
    //Se hora atual for >= a data_nova_dt -> execute a rotina desejada

};

tempo.addEventListener( TimerEvent.TIMER, checaIntervalo );   
tempo.start();

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigada Roger. :worship:

 

Sua ajuda é sempre valiosa, enriquece meu amor pelo Flash.

 

Minha intenção é usar em um 'popup' swf com publicidade, o cookie é para evitar que o arquivo seja recarregado ao voltar para a home por determinado tempo. Observei em uma página do clube do hardware.

 

O timer para exibir o popup por 7 segundos + botão Fechar tenho funcionando. Fica mais elegante o anúncio discreto.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pesquisei sobre SharedObject em AS3, foi tranquilo encontrar tutoriais e um fla pra download, além do Adobe Help.

 

Agora é estudar pra compreender o uso.

 

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.