Jump to content


Photo

Data-hora


  • Faça o login para participar
3 replies to this topic

#1 Eu_Nana

Eu_Nana

    12 Horas

  • Usuários
  • 291 posts
  • Sexo:Feminino
  • Localidade:SP

Posted 22/09/2009, 15:40

Olá pessoal

Criei esse JS para exibir dia, mês e ano e hora:min:seg



Ele esta exibindo tudo certinho .......porém ele não esta atualizando o relógio....o segundo fica parado só qnd atualizo a página q ele atualiza o relógio....quero deixar o segundo mudando automático



Tentei usar o setTimeout mais não deu certo......alguém pode me ajudar?







Veja meu JS:


[codebox]

hoje = new Date()
horatual = new Date()
hora = horatual.getHours()
minutos = horatual.getMinutes();
dia = hoje.getDate()
dias = hoje.getDay()
mes = hoje.getMonth()
ano = hoje.getFullYear()


function CriaArray (n)
{
this.length = n
}
NomeDia = new CriaArray(7)
NomeDia[0] = "Domingo"
NomeDia[1] = "Segunda-feira"
NomeDia[2] = "Terça-feira"
NomeDia[3] = "Quarta-feira"
NomeDia[4] = "Quinta-feira"
NomeDia[5] = "Sexta-feira"
NomeDia[6] = "Sábado"

NomeMes = new CriaArray(12)
NomeMes[0] = "janeiro"
NomeMes[1] = "fevereiro"
NomeMes[2] = "março"
NomeMes[3] = "abril"
NomeMes[4] = "maio"
NomeMes[5] = "junho"
NomeMes[6] = "julho"
NomeMes[7] = "agosto"
NomeMes[8] = "setembro"
NomeMes[9] = "outubro"
NomeMes[10] = "novembro"
NomeMes[11] = "dezembro"


document.write (NomeDia[dias] + ", " + dia + " de " + NomeMes[mes] + " de " + ano + " " + hora + ":" + minutos + ":" + segundos)

[/codebox]

#2 Renato Maia

Renato Maia

    Turista

  • Usuários
  • 39 posts
  • Sexo:Masculino
  • Localidade:Ribeirão Preto
  • Interesses:Desenvolvimento e tecnologia.

Posted 24/09/2009, 12:47

Ola amigo, achei um exemplo na net, ele pode te ajudar.

JS:

<script language="javascript">
<!--
var timerID = null;
var timerRunning = false;
function stopclock()
{
if(timerRunning)
clearTimeout(timerID)
timerRunning = false;
}

function startclock()
{
stopclock();
showtime();
}

function showtime()
{
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds();
var timeValue = "" + ((hours > 12) ? hours - 12 : hours);
timeValue += ((minutes < 10) ? ":0" : ":") + minutes;
timeValue += ((seconds < 10) ? ":0" : ":") + seconds;
timeValue += (hours >= 12) ? " P.M." : " A.M.";
document.clock.face.value = timeValue;
timerID = setTimeout("showtime()",1000);
timerRunning = true;
}
//-->

</script>

Página:
<form name="clock" onSubmit="0">
<input type="text" name="face" size="12">
</form>
<script>startclock();</script>

Espero ter ajudado.

Atenciosamente,
Renato Maia.
Renato Maia
Microsoft Certified Prrofessional | MCP .NET
RenatoMaia.Net.br tudo sobre desenvolvimento .Net e Tecnologias.

#3 Eu_Nana

Eu_Nana

    12 Horas

  • Usuários
  • 291 posts
  • Sexo:Feminino
  • Localidade:SP

Posted 25/09/2009, 08:49

Ola amigo, achei um exemplo na net, ele pode te ajudar.

JS:

<script language="javascript">
 <!--
 var timerID = null;
 var timerRunning = false;
 function stopclock()
 {
 if(timerRunning)
 clearTimeout(timerID)
 timerRunning = false;
 }
 
 function startclock()
 {
 stopclock();
 showtime();
 }
 
 function showtime()
 {
 var now = new Date();
 var hours = now.getHours();
 var minutes = now.getMinutes();
 var seconds = now.getSeconds();
 var timeValue = "" + ((hours > 12) ? hours - 12 : hours);
 timeValue += ((minutes < 10) ? ":0" : ":") + minutes;
 timeValue += ((seconds < 10) ? ":0" : ":") + seconds;
 timeValue += (hours >= 12) ? " P.M." : " A.M.";
 document.clock.face.value = timeValue;
 timerID = setTimeout("showtime()",1000);
 timerRunning = true;
 }
 //-->
 
 </script>

Página:
<form name="clock" onSubmit="0">
 <input type="text" name="face" size="12">
 </form>
 <script>startclock();</script>

Espero ter ajudado.

Atenciosamente,
Renato Maia.


Eu quero entender o erro do meu JS...

#4 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 25/09/2009, 10:02

Eu quero entender o erro do meu JS...

Erro não existe nenhum. O método document.write() apenas imprime e ponto. :)

Você precisa usar o método setInterval do objeto window: https://developer.mo...dow.setInterval

Exemplo:

function print()
{
	document.write(NomeDia[dias] + ', ' + dia + ' de ' + NomeMes[mes] + ' de ' + ano + ' ' + hora + ':' + minutos + ':' + segundos);
}

function update()
{
	intervalID = setInterval(print, 1000);
}
Neste caso você deveria estar adicionando a função update() no evento onload da tag body da página. ;-)

[]’sAté mais




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq