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

[resolvido] Mandar Função Para Outra Pagina


Zero Cool

Pergunta

na pagina principal do meu site que estou fazendo tem 4 players de audio (media player) e 5 radios buttons sendo que 4 deles serve para parar 3 players e iniciar o respectivo player e o 5 º para parar todos os 4 players (quando a pagina é carregada ela começa a tocar o primeiro player )

tem também um link que abre uma janela pop-up (nome dessa janela = musica) com todos esse players caso a pessoa keira cont ouvindo e cont andar pelo site e quando é clickado ele para todos os 4 players da pagina principal.

Teria como saber por Javascript quando abrir a pagina principal ele ver c a pagiana com nome musica estivesse aberta ele executava a função para parar todos os 4 player dela e também na janela musica (sons.php) existe como eu por no onunload uma função que verificava c a pagina principal (index.php) tah aberta e c tiver ele executa a função que dá play no 1º player ?

obrigado

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Na pagina index.php

tem uma area onde tem 4 (<object>) media players que ficam invisiveis, sendo que cada um deles toca um radio (jovem pan,metropolitana,mix e energia97). + o play e stop deles são controlados por um radio button, ou seja quando a pessoa click no radio button na frente do player ele inicia esse player e para os outros 3 e também tem um radio button que serve para parar todos os 4 players

criei um botão onde ele abre uma janela pop-up, esse pop-up carrega uma pagina que tem outro player que executa nele as 4 radios.

quando a pessao click no botão para abrir a janela pop-up na pagina index.php alem d abrir o pop-up coloquei também para ele parar todos os 4 players dessa pagina (mesma ação do radio button para parar todos).

O player que toca a jovem pan (winmedia1) é executado automaticamente quando a index.php abre (eu executo ele pondo a função de iniciar no <body onload="PlayAudio('winmedia1');pararAudio('winmedia2','winmedia3','winmedia4')">

as funções playAudio e pararAudio são :

function PlayAudio(id)
{
   var elem=FindObject(id);
   if(elem)
   {
      elem.play();
   }
}
function pararAudio(id)
{
   var elem=FindObject(id);
   if(elem)
   {
      elem.stop();
   }
}

Teria como na index.php verificar se a janela pop-up esta aberta, e c tiver executa a função pararAudio('winmedia1','winmedia2','winmedia3','winmedia4') ou anula a playAudio('winmedia1')do onload ?

Outra duvida e c quando eu fechasse a janela pop-up (utilizando o "onunload") ele passasse para a index.php (c esta também estivesse aberta) a função PlayAudio(winmedia1) ?

acho que dá pra fazer atraves do opener e closed + não sei como :blink:

Obrigado dsd já

Editado por Zero Cool
Link para o comentário
Compartilhar em outros sites

  • 0
Teria como na index.php verificar se a janela pop-up esta aberta ? ...
janela = window.open(...);
var boolean = janela.closed;
a variável boolean é do tipo boleano (true / false). Sem comentários.
Outra duvida e c quando eu fechasse a janela pop-up (utilizando o "onunload") ele passasse para a index.php (c esta também estivesse aberta) a função PlayAudio(winmedia1) ?
Dentro da pop-up você pode chamar qualquer função (método) da janela pai.
<html>
<head>
<.script language="JavaScript" type="text/javascript">
function fecha()
{
	if(window.opener.closed == false)
              window.opener.PlayAudio('winmedia1');
        return;
}
</script>
</head>
<body onunload="fecha()">
Eu sou um popup!!
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

na 2ª parte (o pop-up manda as funções) acorreu tudo bem + na hora da index.php verificar c ele existia deu erro

-------------------------------------------------------

Esse pop-up é aberto da seguinte maneira na pagina index.php

<input name="" onmouseover="this.className='botaoHover'" onmouseout="this.className='botao'" type="button" class="botao" onclick="popup('radios.php','Radio');pararAudio('WinMedia1'); pararAudio('WinMedia2'); pararAudio('WinMedia3'); pararAudio('WinMedia4');ShowObject('RadioButton1', 1);ShowObject('RadioButton2', 1);ShowObject('RadioButton3', 1);ShowObject('RadioButton4', 1);ShowObject('RadioButton5', 0);paraMsg();ShowObject('Marquee1', 1);ShowObject('Marquee2', 1);ShowObject('Marquee3', 1);ShowObject('Marquee4', 1)" value="Radios"/>

onde a função popup é a seguinte :

function popup(pagina,nome){

window.open(pagina,nome,"width=350,height=150,scrollbars=NO,resizable=NO")

}

O codigo:

janela = window.open(...);
var boolean = janela.closed;

quando testei ele abria a pop-up assim que o script era executado, mais eu só quero que ela seja aberta caso o usuario click no botão para abrir ela, e dps caso a index.php seja recarregada ou o usuario volte ate ela, ela verifique c a pagina de nome RAdio esta aberta e c sim execute a seguinte função : pararAudio('WinMedia1');

Editado por Zero Cool
Link para o comentário
Compartilhar em outros sites

  • 0

O que quis dizer é que você pode:

  • criar uma referência ao popup criado (é isso o que a variável janela tá fazendo)
  • através dessa referência verificar se a janela está fechada (o que não quer dizer que ela não esteja aberta, :excl: )

No seu caso seria melhor criar uma variável global pra que você pudesse us´-la em qualquer outra função. Vamos supor, janela.

<script>
var janela=null;
//Inicialmente nulo

function popup(pagina,nome)
{
   janela = window.open(pagina,nome,"width=350,height=150,scrollbars=NO,resizable=NO");
   //Criei a referência
}

function existeJanela(j) {
   if(!j || j.closed == true)
       alert("Pop-up fechada");
   else
       alert("A pop-up está aberta");
}
</script>

<input type="button" value="A" onclick="popup('a.html','teste')">
<input type="button" value="B" onclick="existeJanela(janela)">

Link para o comentário
Compartilhar em outros sites

  • 0

ah, isso é verdade.

Afinal de contas, a variável janela é definida a cada execução(exibição) da página. Quando a página é alterada ou atualizada, a variável vai ser recriada passando a armazenar um valor NULL novamente.

não estou vendo solução... -_-

Link para o comentário
Compartilhar em outros sites

  • 0

Daria para fazer uma verificação assim ?

window['Nomedajanela'].closed
EDITANDO Vlw pela ajuda. Encontrei um modo simples na janela pop-up posso colocar um setInternal("funçãoverifica()", 1); onde a funçãoverifica seria :
function fecha()
{
if(window.opener.closed == false)
window.opener.PararAudio('winmedia1'); 

return;
}

A verificação é feita pela propria popup e não pela index.php

testei e funcionou

Vlw novamente

Editado por Zero Cool
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...