Ir para conteúdo
Fórum Script Brasil
  • 0

imagem alternadas


celestino

Pergunta

Olá

Estou a precisar de um javascript que vai a uma determinada pasta do site, buscar imagem alternadas a cada minuto e que as redimensiona para um só tamanho e as exiba dentro de uma página. Já encontrei algum exemplos mais não são o que eu quero

Desde já obrigada por toda a ajuda

Celestino neves

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Encontrei este script, mas não e bem o que eu queria

1- Tenho que especificar onde esta a imagem, e eu queria que só especificasse onde esta a pasta e que o script escolhesse uma imagem

2- Tem-se que actualizar a página, e eu queria que ela ( a imagem) mudasse automaticamente x minutos ( x= tempo)

3- A imagem e visualizada do seu tamanho real, e eu queria que as imagens se redimensionassem automaticamente para um tamanho só

Sei que são muitos (querias) :)

Mais uma fez obrigada

<script language="javascript">

function CriaTab(n)
{
this.length = n
for (var x=0;x<=n;x++)
{ this[x] = "" }
}

var maxtam = 6;
var index = maxtam + 1;
ImgName = new CriaTab(maxtam)
ImgName[0] = "1.jpg"
ImgName[1] = "2.jpg"
ImgName[2] = "3.jpg"
ImgName[3] = "3.jpg"
ImgName[4] = "4.jpg"
ImgName[5] = "5.jpg"
while( index > maxtam ){

index = Math.round(Math.random()*4);
if ( index < maxtam )
document.write("<img src=" + ImgName[index] + ">");

}

</script>

Editado por fercosmig
Utilize as tags de código, facilitam a visualização.
Link para o comentário
Compartilhar em outros sites

  • 0

Oi Celestino, beleza?

Então vamos por partes como faria Jack:

1- Tenho que especificar onde esta a imagem, e eu queria que só especificasse onde esta a pasta e que o script escolhesse uma imagem

Não dá. Isso porque o javascript não pode ler pastas. Ele não consegue ler os arquivos de nenhuma pasta, o script que você tem é uma gambiarra, ele carrega imagens com nome pré-estabelecidos pra mostrar na tela.

O resto dá pra fazer....Mas se precisa mesmo que o javascript leia as imagens que tem numa pasta você pode misturar o javascript com php. Assim:

Entre as tags <head></head>

<script type="text/javascript">

function randomImages(){

var index = ImgName.length + 1;

    while( index > ImgName.length ){
    index = Math.round(Math.random()*ImgName.length)
        if ( index < ImgName.length )
        document.getElementById('imagens').innerHTML=index+"<img src=" +url+"/"+ImgName[index] + " width='75' height='75'>"
    }
 setTimeout("randomImages()", 30000)
}

<?php
$url="imagens/dinamicas";

$arquivos=scandir("$url");
echo 'url="'.$url.'"'."\n";
echo 'ImgName=[]'."\n";
$x=0;
foreach($arquivos as $valor){
if($valor=="." OR $valor=="..")
continue;
echo 'ImgName['.$x.']="'.$valor.'"'."\n";
$x++;
}
?>


window.onload=function(){
randomImages(url)
}
você pode mudar o tamanho das imagens mexendo na parte do código na função "randomImages" onde ele insere a imagem, lá tem o atributo "width" que é a largura e "height" que é a altura. Portanto, se quer travar em 150x120px você deve colocar:
width=150
height=120
Ainda na função randomImages, tem uma parte que é assim:
setTimeout("randomImages()", 30000)
você pode mudar o 30000 para qualquer outro intervalo de tempo, lembrando que é dado em milissegundos, então a função que te passei muda as imagens a cada 30 segundos. Tem mais uma coisa que precisaria mudar, a variável $url na parte do php.
<?php
$url="imagens/dinamicas";

$arquivos=scandir("$url");
echo 'url="'.$url.'"'."\n";
echo 'ImgName=[]'."\n";
$x=0;
foreach($arquivos as $valor){
if($valor=="." OR $valor=="..")
continue;
echo 'ImgName['.$x.']="'.$valor.'"'."\n";
$x++;
}
?>

Ali na primeira linha, tem a variável $url que será a localização da pasta onde se encontram as imagens.

Não sei em que linguagem está fazendo, mas terá de usar uma linguagem de servidor como o php por exemplo.

Outra coisa, no javascript eu coloquei:

document.getElementById('imagens').innerHTML

Isso quer dizer que você vai ter que ter um div de id "imagens" para o código que eu passei funcionar, se quiser trocar tudo bem, mas terá de mudar o id ali no javascript e botar a mesma id no div que vai colocar no html.

AKeleabrasssssss

ps: Eu sempre tenho curiosidades estranhas, mas ao ler o seu post você dizia "obrigada", "obrigada". Seu nick é Celestino e além do mais você não tem sexo definido no perfil, pois não mostra ali debaixo da tag "Membro", o que me deixa mais encafifado....Tu és homem ou mulher??? Tenho a impressão de que é homem, se for não fala obrigada numa reunião hein véi...senão você ta perdido! rsrsrsrs

Link para o comentário
Compartilhar em outros sites

  • 0

Olá

Só a um problema é que o meu servidor onde tenho a minha página, alojada e público e não suporta o formato PHP . Se tiver a possibilidade de ser todo em javascript era muito bom (não estudei programação sou só um simples curioso que ao longo do tempo vai aprendendo) .

PS: eu sou de Portugal e como deves saber a uma diferencia da linhagem.

E mais uma vez agradeço a tua ajuda.

Link para o comentário
Compartilhar em outros sites

  • 0

PS: eu sou de Portugal e como deves saber a uma diferencia da linhagem.

E mais uma vez agradeço a tua ajuda.

Ahhh.....eu ví que era de portugal mas não sabia que era português, achei que era um brasileiro que morava aí. Eu imagino uqe tenha diferenças na linguagem mas confesso que não conheço todas. valeu pelo esclarecimento rsrsrs ^_^

Olá

Só a um problema é que o meu servidor onde tenho a minha página, alojada e público e não suporta o formato PHP . Se tiver a possibilidade de ser todo em javascript era muito bom (não estudei programação sou só um simples curioso que ao longo do tempo vai aprendendo) .

Então não vai ser possível. O javascript, como eu falei não lê pastas. Ele até lê, mas isso não pode ser usado na net, vai gerar uma série de pop-ups avisando da segurança e do perigo de executar a ação. você vai ter que usar uma linguagem de servidor para tal.

No seu caso você pode colocar no array os nomes dos arquivos que estão na sua pasta. Como fez no seu primeiro script. Ok?

Akeleabrassssss

Link para o comentário
Compartilhar em outros sites

  • 0
Guest celestino

PS: eu sou de Portugal e como deves saber a uma diferencia da linhagem.

E mais uma vez agradeço a tua ajuda.

Ahhh.....eu ví que era de portugal mas não sabia que era português, achei que era um brasileiro que morava aí. Eu imagino uqe tenha diferenças na linguagem mas confesso que não conheço todas. valeu pelo esclarecimento rsrsrs ^_^

Olá

Só a um problema é que o meu servidor onde tenho a minha página, alojada e público e não suporta o formato PHP . Se tiver a possibilidade de ser todo em javascript era muito bom (não estudei programação sou só um simples curioso que ao longo do tempo vai aprendendo) .

Então não vai ser possível. O javascript, como eu falei não lê pastas. Ele até lê, mas isso não pode ser usado na net, vai gerar uma série de pop-ups avisando da segurança e do perigo de executar a ação. você vai ter que usar uma linguagem de servidor para tal.

No seu caso você pode colocar no array os nomes dos arquivos que estão na sua pasta. Como fez no seu primeiro script. Ok?

Akeleabrassssss

Link para o comentário
Compartilhar em outros sites

  • 0
Guest celestino

Realmente o javascript da forma que queria só se pode ser feito com PHP (encontrei vários da net) . Encontre um que não é bem o que eu queria, mais faz o efeito bem aproximadamente (não muda de imagem aleatório a cada x de segundo, só muda quando se actualiza a pagina) mas por agora esta bom. O problema que encontrei com este javascript é que não estou a conseguir a colocar o texto da imagem.

Qualquer ajuda é sempre bem vida e quero já agora agradecer a ajuda de KaKarotto

Vou a explicação de como esta o javascrip

&lt;script language=JavaScript src="imagem/1.js"></SCRIPT>

Dentro da pasta das imagens eu criei um fichero JScript :

var b1dis = "<a href=\"";
var bdis = "\"><img src=\"";
var edis = " width=\"120\" alt=\"some text\" border=\"0\"></a>";
var rnumb = "";
var img = "";
rnumb += Math.floor(Math.random()*3);
img = rnumb;
if (img == "0") {
document.write(b1dis+ "page1.html" +bdis+ "imagem/1.jpg\"" +edis);
}
if (img == "1") {
document.write(b1dis+ "page2.html" +bdis+ "imagem/2.jpg\"" +edis);
}
if (img == "2") {
document.write(b1dis+ "page3.html" +bdis+ "imagem/3.jpg\"" +edis);
}

Não sei se é assim que se faz mas esta a funcionar bem só falta o texto das imagens

Link para o comentário
Compartilhar em outros sites

  • 0

Texto nas imagens? Se for pra evitar a cópia não irá conseguir com javascript. POrém se for tipo um logotipo ou nome do site pra deixar mais customizado então você poderia inserir dentro do link que contém a imagem um título (h1, h2, h3, h4, h5 ou h6). Definir sua posição em absolute e z-index:1 para ficar por cima da imagem.

Aí é mais Css. Se é que eu entendi direito.

Não sei porque alterou o código, seu primeiro script tava melhor, e bastava uma alteração para que ele funcionasse do jeito que quer, mudando de x em x segundos...

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...