Ir para conteúdo

POWERED BY:

Arquivado

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

WEBIER

[Resolvido] Rotatividade de exibição de campos

Recommended Posts

Em primeiro lugar sou iniciante em JavaScript e DHTML...

 

Estou fazendo um site de noticias...

 

Esse codigo abaixo me mostrar a ultima noticia que foi Destaque(Classe1 = "Destaque")...

 

<%
Set nt1 = Server.CreateObject("ADODB.Recordset")
nt1.Open "SELECT * from noticias order by id desc", DB

Contar = 0

Do while not nt1.Eof
tópico = nt1("tópico")
Resumo = nt1("Resumo")
Classe1 = nt1("Classe1")
Classe = nt1("Classe")
Horas = nt1("Horas")
id = nt1("id")

IF Contar > 0 Then
   exit do
end if
                
                
if Classe1 = "Destaque" Then
%>

  <p align="left" style="margin-top: 0; margin-bottom: 0">
  <a target="conteudo" href='Mostra.asp?Noticias=<%=nt1("id")%>&Classe=<%=nt1("classe")%>'>
  <img src="<%=nt1("foto")%>" width="189" height="158" border="1">
  <font face="Arial" color="red" style="font-size:8pt;"><strong><%Response.Write tópico%></strong></font><br>
  <font face="Arial" color="black" style="font-size:6pt;"><strong><%Response.Write Resumo%></strong></font></p></a> 
  
<%
Contar = Contar + 1
end if
nt1.Movenext
Loop
%>

 

a ideia é mostrar uma Imagem(CAMPO:FOTO) e logo abaixo o Titulo(CAMPO:TOPICO) da noticias e um resumo da noticia(CAMPO:RESUMO)... a se a pessoa clica em cima levará a materia na integra.

 

Está tudo funcionando perfeitamente!

 

O que quero então?

 

Ele trocar a noticia de tanto em tanto segundos... ficar reversando entras as ultimas 5 noticias...

 

Exemplo:

 

Aparece a foto/tópico/Resumo da ultima noticia... passa 10segundos... ele muda a foto/tópico/Resumo da penultima noticia... assim sucessivamente até 5 noticias... depois ele volta pra ultima noticia novamente e recomeça o loop.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer algo como:

 

<%
Set nt1 = Server.CreateObject("ADODB.Recordset")
nt1.Open "SELECT * from noticias order by id desc", DB

Contar = 0

numNoticia = 1

Do while not nt1.Eof
tópico = nt1("tópico")
Resumo = nt1("Resumo")
Classe1 = nt1("Classe1")
Classe = nt1("Classe")
Horas = nt1("Horas")
id = nt1("id")

IF Contar > 0 Then
 exit do
end if
 
 
if Classe1 = "Destaque" Then
%>

<p align="left" style="margin-top: 0; margin-bottom: 0" id="noticia<%Response.Write numNoticia%>">
 <a target="conteudo" href='Mostra.asp?Noticias=<%=nt1("id")%>&Classe=<%=nt1("classe")%>'>
 <img src="<%=nt1("foto")%>" width="189" height="158" border="1">
 <font face="Arial" color="red" style="font-size:8pt;"><strong><%Response.Write tópico%></strong></font><br>
 <font face="Arial" color="black" style="font-size:6pt;"><strong><%Response.Write Resumo%></strong></font>
 </a>
</p> 
 
<%
numNoticia = numNoticia + 1
Contar = Contar + 1
end if
nt1.Movenext
Loop
%>

Pronto, você vai listar as noticias e cada uma terá seu id (noticia1, noticia2, noticia3, noticia4, noticia5, [...])

 

Agora antes do head do html coloque o css:

 

<style type="text/css">
#noticia2, #noticia3, #noticia4, #noticia5 { display: none; }
</style>

e depois do css o javascript:

 

<script type="text/javascript">
noticias = function() {
	
	this.quantidade = 5; // int
	this.intervalo = 3000; // seconds
	
	this.num = 1;
	this.start = false;

	function noticia() {
		if (this.num == 1) {
			if (document.getElementById('noticia'+this.quantidade).style.display == "block") { 
				hideNoticia(this.quantidade);
			}
		} else {
			hideNoticia(this.num-1);
		}
		showNoticia(this.num);
	}
	
	function showNoticia(noticia) {
		document.getElementById('noticia'+noticia).style.display = "block";
	}
	
	function hideNoticia(noticia) {
		document.getElementById('noticia'+noticia).style.display = "none";
	}
	
	function rodaNoticia() {
		if (this.start && this.num < this.quantidade) {
			this.num = this.num + 1;
		} else {
			this.num = 1
		}
		
		noticia();
		
		this.start = true;
	}
	
	window.setInterval(rodaNoticia, this.intervalo);
}

window.onload = noticias;
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei conforme falou, mas a noticia nao muda... fica somente a primeira

 

Clique com o botão direito, visualizar código-fonte e veja se nas noticias.. dentro da tag <p> contém os ids: noticia1, noticia2, noticia3... etc

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta voltar no topico, e dizer como resolveu.

Um moderador edita o titulo.

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.