Randomizar imagens

Rui Marto

Power Member
Sabem me dizer como é que faço para trocar imagens ao acaso de uma página?

O objectivo é ter por exemplo 4 ou 5 imagens diferentes, e cada vez que se acede ao site a imagem muda.
 
Sem ser com javascript? Em XHTML não dá? É que com javascript depois vão me aparecer aqueles avisos estilo "esta página contém conteúdo activo" etc, e isso é irritante.
 
Só por HTML não é possível? Não conheço XSLT. Vou experimentar com javascript a ver o que dá. Em último caso vai um .gif que também é bom...

PS: Só agora reparei no teu post de php. Realmente php, por enquanto, não é uma opção.
 
é pena, chegava isto:



<?php


$imagens = array("foto1.jpg","foto2.jpg","foto3.jpg");


$rand = array_rand($imagens);
echo "<img src=\"$arrImg[$rand]\" alt=\"\" />"

?>
 
Pois, já me disseram várias vezes que o PHP é mais simples em muitas coisas, mas nunca me dei ao trabalho de perder umas horas a ver isso. De qualquer forma acho que o servidor não suporta php, daí eu preferir html.

Aqui à tempos tinha visto um código em que eram definidas variáveis mas já não tenho a certeza se era html ou outro.
 
pq não em flash??? ate podias dar um aspecto melhorado ao slideshow!

Quando ao aviso de controlos activeX, podes usar desta forma:

Esta função no header:

function groove_flash(flashFile, larg, altu , bIsTransparent)
{
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="'+larg+'" height="'+altu+'">');
document.write('<param name="movie" value="'+flashFile+'">');
document.write('<param name="quality" value="high">');
if(bIsTransparent)
document.write('<param name="wmode" value="transparent">');
document.write('<param name="menu" value="false">');
document.write('<embed src="'+flashFile+'" '+(bIsTransparent?'wmode="transparent"':'')+' menu="false" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+larg+'" height="'+altu+'"></embed>');
document.write('</object>');
}

E no (X)HTML, quando chamas o filme de flash:

<script>groove_flash("images/intro.swf", "400", "400", true)</script>

True= transparente
False= opaco

Experimenta!
 
Evita aquele clique chato em cima do flash, aquando da renderização do documento (X)HTML.

Desta forma ele ja pode fazer um slideshoe em flash sem ter o tal clique... com as vantagens de flash!
 
exepriementem... anula tudo isso, dependendo do nivel de segurança do vosso browser. Eu n acredito em segurança de browsers, nem firewall... a virose quando tem que atacar... ataca e depoisso remediando!
 
lol Por curioso que possa parecer, mais facilmente faço uma página sem erros para o IE que para o FF. :) Também, em parte, porque estou sempre a visualizar no IE, logo se houver falhas, são corrigidas para o IE.
 
lol Por curioso que possa parecer, mais facilmente faço uma página sem erros para o IE que para o FF. :) Também, em parte, porque estou sempre a visualizar no IE, logo se houver falhas, são corrigidas para o IE.


és a primeira vez que oiço um developer dizer isso...e já conheci muitos...de qq modo deves ter o cuidado de visualizar sempre ( pelo menos) em firefox e IE
 
Lamento mas ainda não é desta que ouves um developer dizer isso, pelo simples facto de que eu não sou um developer. :p Estou a aprender, mas ainda não sei o suficiente para me poder considerar isso. De qualquer forma, mais facilmente seria um designer do que um developer (penso haver distinção). :)
 
Back
Topo