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

Duvida Onclick


Guest Rafael Rebelo

Pergunta

Guest Rafael Rebelo

Seguinte.. estou com um problemão..

Tenho uma funcao que é executada quando acontece o evento onclick numa célua de uma tabela.. até aí tudo bem...

Mas eu quero executar outra função quando eu clicar em qualquer outro lugar do site, que não seja nessa célula onde tem o evento onclick..

Eu pensei em colocar no body... mas fazendo isso, até quando o click é dado na célula, ele executa a função do body..

alguém tem alguma sugestão?

A pagina é assim:

Eu tenho um "menu cascata".. quando a pessoa clica numa celula aparece o div com as opções.. caso ela passa de uma célula para a outra, as opções da outra célua que aparecem...

Eu quero que funcione igualzinho o Windows.. que mesmo tirando o mouse do menu, ele continue lá.. só desapareça caso eu clique em algum outro lugar que não seja o menu...

O que não estou conseguindo fazer é ele desaparecer.. quando clico em outro lugar do site..

smile.gif

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Guest Rafael Rebelo

Um jeito bom de resolver esse problema é se eu tivesse como saber onde foi clicado.. o id de onde foi clicado..

Tem como?

Imaginem o exemplo:

<script>

function funcao(valor) {

document.a.b.value = valor;

}

<body onclick=funcao('na pagina');>

<center><table><tr><td id=celula onclick=funcao('na tabela')>tabela</td></tr></table>

</center>

<form name=a><input type=text name=b></form>

</body>

Nunca que ao clicar na tabela.. irá aparecer no campo 'na tabela'... sempre irá aparecer 'na pagina'... ao contrario do que eu quero..

Link para o comentário
Compartilhar em outros sites

  • 0

o problema nesse caso é outro. Existe uma cadeia de eventos que ocorrem a cada click do mouse. porque nesse teu exemplo sempre vai aparecer na página? porque o evento onclick da tabela ocorre antes do evento onclick do body, então ele passa primeiro no onclick da tabela, atribui o valor ao campo, só q em seguida já passa no onclick do body sobreescrevendo o q tem no campo por 'na pagina'; Faça um teste simples q você vai entender.

<script language="javascript">

function funcao(valor) {

alert(valor);

document.a.b.value = valor;

}</script>

<body onclick="funcao('na pagina');">

<center><table><tr><td id=celula onclick="funcao('na tabela')">tabela</td></tr></table>

</center>

<form name=a><input type=text name=b></form>

</body>

Colocando aquele alert você vai entender o q estou falando. Então sempre vai vir o onclick do elemento q você chamou e por último o do body.

Qualquer coisa posta ae, vou voltar somente semana q vem, mas tem gente ae no forum q tb pode te ajudar.

Abraço

Crystian

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...