Ir para conteúdo

POWERED BY:

Arquivado

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

ReAdShOtErS

getElementById randomico

Recommended Posts

o código abaixo serve para chamar determinados links dentro de um iframe

preciso q a cada click a src='http://www.google.com.br'; mude para outros links

 

<script type="text/javascript">
function display()
{
document.getElementById("Sponsors").src='http://www.google.com.br';
}
</script>
</head>

<body>
<form>
<a href="#"><input type="button" value="Click me!" onclick="display()" /></a>
</form>

<iframe id="Sponsors"></iframe>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cria uns if's ai...

 

function display(ir){
   if(ir == 'google'){
      document.getElementById("Sponsors").src='http://www.google.com.br';
   }
   else if(ir == 'uol'){
      document.getElementById("Sponsors").src='http://www.uol.com.br';
   }
   else{
      alert('Escolha um caminho para o acesso!');
   }
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

e as urls

tem pelomenos umas 20 aqui que deve se alternar a cada clique

mostrando um local diferente no iframe.

 

 

para facilitar o entendimento

tenho um site php e nos links dele quero por uma chamada para uma função q joga um outro link dentro de um iframe sem interferir no destino do link principal.

 

os links a serem jogados no iframe são diferentes, em torno de uns 20 q devem se alternar entre si a cada clique.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e as urls

tem pelomenos umas 20 aqui ...

para facilitar o entendimento

tenho um site php e nos links dele quero por uma chamada para uma função q joga um outro link dentro de um iframe sem interferir no destino do link principal.

os links a serem jogados no iframe são diferentes, em torno de uns 20 q devem se alternar entre si a cada clique.

Facilitar??? Não deu para entender nada!

Se você não for claro na pergunta ninguém poderá adivinhar o que você quer e ajudá-lo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta bem vou simplificar ainda mais

 

esse é um botão

<a href="http://www.meusite.com/pag1.html"><input type="button" value="Click me 1!" onclick="Display()" /></a>
<a href="http://www.meusite.com/pag2.html"><input type="button" value="Click me 2!" onclick="Display()" /></a>
<a href="http://www.meusite.com/pag3.html"><input type="button" value="Click me 3!" onclick="Display()" /></a>

href é a pagina q o visitante deseja entrar

onclické a função que lança um link dentro de um iframe

 

a cada clique que é feito em um dos botões o onclick deve mudar o link a ser disparado no iframe

 

na função display() são 20 links para se alternarem entre si

e cada vez q a função for ativada ela dispare um link diferente do click anterior

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já que JavaScript não bem a minha praia, baseio minha resposta em uma versão adaptada de array_rand() do PHP, distribuída como parte do projeto PHPJS.

 

Essa função faz exatamente o mesmo que no PHP. Dado um array como argumento, ela te retorna aleatoriamente uma chave desse array.

 

Com essa chave armazenada em uma variável local à função Display(), você "escolhe" esse índice no array de links e joga no IFrame.

 

Lembre-se apenas denão especificar o segundo parâmetro dessa função, para que seja retornado apenas um índice de cada vez.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Puts, tá bem difícil de entender mesmo hauehuahe.

 

Mas acho que o que você quer é o seguinte:

 

<script>
function Display(){
//array com sites que serão exibidos randomicamente
arrLinks = ['google.com','ibm.com','twitter.com'];
//pegando um dos sites acima randomicamente
urlDes = arrLinks[Math.floor(Math.random()*arrLinks .length)]
//carregando no iframe
document.getElementById("Sponsors").src='http://' + urlDes;
}
</script>
<a href="http://www.meusite.com/pag1.html" onclick='Display()'>LInk 1</a>
<a href="http://www.meusite.com/pag2.html" onclick='Display()'>Link 2</a>

Ou seja, seu título do tópico tá errado hauehau

 

Você não quer um getElementById randomico (afinal o sponsors é um só).

Você quer é o SRC DO IFRAME randomico.

Seja mais claro no próximo tópico hehehe

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou direitinho do jeito que queria,

esse script ai adaptado de phpjs tem como postar um exemplo em funcionamento

 

<script>
function Display(){
arrLinks = ['google.com','ibm.com','twitter.com'];
urlDes = arrLinks[Math.floor(Math.random()*arrLinks .length)]
document.getElementById("Sponsors").src='http://' + urlDes;
}
</script>
<a href="#" onclick='Display()'>LInk 1</a>

<iframe id="Sponsors"></iframe>

tendo em vista q devo chamar essa função em todos os links

como faço isso sem ter q adcionar a função dysplay em cada um dos links,

lembro q a uns dois anos eu usava um script jquery que chamava uma função em todos os links..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, não entendi quase nada do que falou (novamente).

 

Use pontuação por favor. Senão fica difícil a galera te ajudar.

Quando for perguntar algo, termine com um "?".

 

Pra colocar uma função em todos os links, você pode fazer algo assim:

 

<script>
function Display(){
arrLinks = ['google.com','ibm.com','twitter.com'];
urlDes = arrLinks[Math.floor(Math.random()*arrLinks .length)]
document.getElementById("Sponsors").src='http://' + urlDes;
}
document.body.onload = function(){
 var as = document.getElementsByTagName('a');
 var aslen = as.length;
 for(var i=0; i<aslen; i++){
  as[i].onclick=Display; //aqui vai sem o parenteses mesmo
 }
}
</script>

Nem testei mas acho que é isso aí mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

href é a pagina q o visitante deseja entrar

onclické a função que lança um link dentro de um iframe

Se eu trocar de página, o iFrame "morre". Você quer criar um iFrame com sources aleatórios?

 

window.onload = function(){
    var sponsors = ['http://google.com','http://ibm.com','http://twitter.com'];
    document.getElementById("Sponsors").src = sponsors[Math.floor(Math.random()*sponsors.length)];
}

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.