Esta função adiona até dois efeitos na barra de status. Totalmente confíguravel.
var animar_status_vars=new Object();
animar_status_vars['local_index']=0; //esta variavel precisa ser definida fora da função
animar_status_vars['mensagem_index']=0;
function animar_status(){
///////////////////////////////////////////////////////////////////////////////////////////
// CHAME ESTA FUNÇÃO APENAS UMA VEZ //// NOTA //
///////////////////////////////////////////////////////////////////////////////////////////
// você pode chama-la adicionando //// IMPOSSÍVEL DE MUDAR A BARRA DE STATUS NO //
// onload="animar_status();" dentro //// FIREFOX QUANDO O JAVASCRIPT NÃO ESTÁ AUTORIZADO //
// da tag <body> no seu documento //// //
///////////////////////////////////////////////////////////////////////////////////////////
// função criada e distribuida gratúitamente por http://www.thesims2br.com/ //
// use avontade mas não remova os créditos //
///////////////////////////////////////////////////////////////////////////////////////////
var mensagem="Mensagem"; //mensagem que aparecerá na barra de status
var align="right"; //alinhamento da barra de status (string: left|center|right)
var intervalo=5; //intervalo da animação, quanto menos mais rapido (100 = 1 segundo) (int)
//animação do status
var anima_status=true; //liga a animação na barra de status (boolean: true|false)
var map=10; //número de caractéres envolvido no efeito em cada lado (int: 0 a variavel)
var none_char="-"; //caractére stático (string: 1 caractére)
var right_char=">"; //caractére ativo que inicia na direita (string: 1 caractére)
var left_char="<"; //caractére ativo que inicia na esquerda (string: 1 caractére)
var wall_char="|"; //caractére que faz o caractére ativo quicar (string: 1 caractére)
var add_space=true; //adiciona espaço na direita e na esquerda da mensagem (boolean: true|false)
//animação da mensagem
var anima_mensagem=false; //liga a animação na mensagem (boolean: true|false)
var animacao_mensagem='auto'; //tipo da animação na mensagem (string: auto|up|down)
////////////////////////////////
// NÃO ALTERE O CÓDIGO ABAIXO //
////////////////////////////////
function parseint(n){
//função privada apenas para debug
n=n.toString();
n=n.split(".");
if(n[1]) n[0]=parseInt(n[0])+1;
n=n[0];
return n;
}
var status="";
var statusT="";
var mensagemT="";
var mensagem_back=false;
var i=0;
var local_index=animar_status_vars.local_index;
var mensagem_index=animar_status_vars.mensagem_index;
if(anima_mensagem){
if(mensagem_index<0){
mensagem_back=true;
mensagem_index=mensagem_index*(-1);
}
mensagemT=mensagem.substring(0,mensagem_index);
if(!animacao_mensagem||animacao_mensagem=='auto'){
if(mensagem.substring(mensagem_index,mensagem_index+1).toLowerCase()==mensagem.substring(mensagem_index,mensagem_index+1)){
mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toUpperCase();
}
else{
mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toLowerCase();
}
}
else if(animacao_mensagem=='up') mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toUpperCase();
else mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toLowerCase();
mensagemT+=mensagem.substring(mensagem_index+1);
mensagem=mensagemT;
if(mensagem_index>=mensagem.length-1||mensagem_back){
mensagem_index=(mensagem_index*(-1))+1;
}
else mensagem_index++;
}
if(anima_status){
mensagem=wall_char+(add_space?" ":'')+mensagem+(add_space?" ":'')+wall_char;
for(i=1;i<=map;i++) status+=none_char;
status+=mensagem;
for(i=1;i<=map;i++) status+=none_char;
if(local_index<map){
statusT=status.substring(0,local_index)+right_char+status.substring(local_index+1,status.length-map);
statusT+=status.substring(status.length-map,status.length-map+(map-local_index-1))+left_char+status.substring(status.length-map+(map-local_index));
}
else{
statusT=status.substring(0,map*2-local_index-1)+left_char+status.substring(map*2-local_index,status.length-map);
statusT+=status.substring(status.length-map,status.length-map+(local_index-map))+right_char+status.substring(status.length-map+(local_index-map+1));
}
statusT=wall_char+statusT+wall_char;
}
else{
statusT=mensagem;
}
if(statusT.length>127){
alert("Status muito grande\n\nA barra de status não pode ter mais de 127 bytes. Diminua "+(statusT.length-127)+" caractére"+(statusT.length-127>1?'s':'')+" da mensagem ou mude o map para "+(map-parseint((statusT.length-127)/2))+".");
return;
}
if(align=='right') while(statusT.length<127) statusT=" "+statusT;
else if(align=='center') while(statusT.length<127) statusT=" "+statusT+" ";
window.defaultStatus=statusT;
if(local_index>=map*2-1) local_index=0;
else local_index++;
animar_status_vars.local_index=local_index;
animar_status_vars.mensagem_index=mensagem_index;
setTimeout("animar_status()",intervalo*10);
}
Pergunta
jose.rob.jr
Esta função adiona até dois efeitos na barra de status. Totalmente confíguravel.
var animar_status_vars=new Object(); animar_status_vars['local_index']=0; //esta variavel precisa ser definida fora da função animar_status_vars['mensagem_index']=0; function animar_status(){ /////////////////////////////////////////////////////////////////////////////////////////// // CHAME ESTA FUNÇÃO APENAS UMA VEZ //// NOTA // /////////////////////////////////////////////////////////////////////////////////////////// // você pode chama-la adicionando //// IMPOSSÍVEL DE MUDAR A BARRA DE STATUS NO // // onload="animar_status();" dentro //// FIREFOX QUANDO O JAVASCRIPT NÃO ESTÁ AUTORIZADO // // da tag <body> no seu documento //// // /////////////////////////////////////////////////////////////////////////////////////////// // função criada e distribuida gratúitamente por http://www.thesims2br.com/ // // use avontade mas não remova os créditos // /////////////////////////////////////////////////////////////////////////////////////////// var mensagem="Mensagem"; //mensagem que aparecerá na barra de status var align="right"; //alinhamento da barra de status (string: left|center|right) var intervalo=5; //intervalo da animação, quanto menos mais rapido (100 = 1 segundo) (int) //animação do status var anima_status=true; //liga a animação na barra de status (boolean: true|false) var map=10; //número de caractéres envolvido no efeito em cada lado (int: 0 a variavel) var none_char="-"; //caractére stático (string: 1 caractére) var right_char=">"; //caractére ativo que inicia na direita (string: 1 caractére) var left_char="<"; //caractére ativo que inicia na esquerda (string: 1 caractére) var wall_char="|"; //caractére que faz o caractére ativo quicar (string: 1 caractére) var add_space=true; //adiciona espaço na direita e na esquerda da mensagem (boolean: true|false) //animação da mensagem var anima_mensagem=false; //liga a animação na mensagem (boolean: true|false) var animacao_mensagem='auto'; //tipo da animação na mensagem (string: auto|up|down) //////////////////////////////// // NÃO ALTERE O CÓDIGO ABAIXO // //////////////////////////////// function parseint(n){ //função privada apenas para debug n=n.toString(); n=n.split("."); if(n[1]) n[0]=parseInt(n[0])+1; n=n[0]; return n; } var status=""; var statusT=""; var mensagemT=""; var mensagem_back=false; var i=0; var local_index=animar_status_vars.local_index; var mensagem_index=animar_status_vars.mensagem_index; if(anima_mensagem){ if(mensagem_index<0){ mensagem_back=true; mensagem_index=mensagem_index*(-1); } mensagemT=mensagem.substring(0,mensagem_index); if(!animacao_mensagem||animacao_mensagem=='auto'){ if(mensagem.substring(mensagem_index,mensagem_index+1).toLowerCase()==mensagem.substring(mensagem_index,mensagem_index+1)){ mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toUpperCase(); } else{ mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toLowerCase(); } } else if(animacao_mensagem=='up') mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toUpperCase(); else mensagemT+=mensagem.substring(mensagem_index,mensagem_index+1).toLowerCase(); mensagemT+=mensagem.substring(mensagem_index+1); mensagem=mensagemT; if(mensagem_index>=mensagem.length-1||mensagem_back){ mensagem_index=(mensagem_index*(-1))+1; } else mensagem_index++; } if(anima_status){ mensagem=wall_char+(add_space?" ":'')+mensagem+(add_space?" ":'')+wall_char; for(i=1;i<=map;i++) status+=none_char; status+=mensagem; for(i=1;i<=map;i++) status+=none_char; if(local_index<map){ statusT=status.substring(0,local_index)+right_char+status.substring(local_index+1,status.length-map); statusT+=status.substring(status.length-map,status.length-map+(map-local_index-1))+left_char+status.substring(status.length-map+(map-local_index)); } else{ statusT=status.substring(0,map*2-local_index-1)+left_char+status.substring(map*2-local_index,status.length-map); statusT+=status.substring(status.length-map,status.length-map+(local_index-map))+right_char+status.substring(status.length-map+(local_index-map+1)); } statusT=wall_char+statusT+wall_char; } else{ statusT=mensagem; } if(statusT.length>127){ alert("Status muito grande\n\nA barra de status não pode ter mais de 127 bytes. Diminua "+(statusT.length-127)+" caractére"+(statusT.length-127>1?'s':'')+" da mensagem ou mude o map para "+(map-parseint((statusT.length-127)/2))+"."); return; } if(align=='right') while(statusT.length<127) statusT=" "+statusT; else if(align=='center') while(statusT.length<127) statusT=" "+statusT+" "; window.defaultStatus=statusT; if(local_index>=map*2-1) local_index=0; else local_index++; animar_status_vars.local_index=local_index; animar_status_vars.mensagem_index=mensagem_index; setTimeout("animar_status()",intervalo*10); }Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.