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

Fechar Div


Ricardo Cobain

Pergunta

Como fechar um div depois de um determinado tempo?

Por exemplo: Depois de ser aberto ele se feche apos alguns segundos!

Baseando-se nesse codigo

<div id="Menu_"

style="display:none">Tags....</div>

<INPUT ID=Menu TYPE="checkbox" noCHECKED NAME=Menu onclick="checkExpand()">

<script language="JavaScript">

var MS=navigator.appVersion.indexOf("MSIE")

window.isIE4 =(MS>0) && ((parseInt(navigator.appVersion.substring(MS+5,MS+6)) >= 4) && (navigator.appVersion.indexOf("MSIE"))>0)

function checkExpand() {

if (""!=event.srcElement.id) {

var ch = event.srcElement.id + "_"

var el = document.all[ch]

if (null!=el) el.style.display = "none" == el.style.display ? "" : "none"

event.returnValue=true

}

}

</script>

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Não gostei muito desse teu código... primeiro você verificou qual navegador mas nem usou na função e segundo utilizou .all que é um método q só funciona no IE.

Pra que serve aquela função? Para sumir com o teu div? Se for tem maneiras mais fácil e entendivel de se fazer isso.

Se quiser posta ae que eu faço uma maneira mais fácil...

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

<html>
<head>
<script language="javascript">
function showHide() {
	try{
    	var obj = document.getElementById('div');
         if(obj.style.visibility=='hidden') obj.style.visibility = 'visible';
         else obj.style.visibility = 'hidden';
	} catch(e){status = e.message}
}
setInterval(showHide, 1000);
</script>
</head>
<body>
<div id="div" style="{overflow: auto; width: 100; height:100; background:#000000;}"><font color="#FFFFFF">Teste</fotn></div>
</body>
</html>

Taí o código...

o seguinte, algumas observações:

- a function showHide faz aparecer e desaparecer o div, se quiserem fazer somente sumir é só tirar o if e else e colocar sempre pra hidden.

- o intervalo de tempo é medido em milisegundos, portanto 1000 é igual a 1 segundo, se quiser aumentar esse tempo é só aumentar no setInterval.

- o style do div não é obrigatório, só coloquei pra dar uma diferenciada.

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

Crystian,

testei o código que você passou e funcionou beleza... acho que poderei aproveitá-lo em algumas páginas minhas...

Mas não entendi o uso do catch(e){status = e.message} ...

e o try... porque usá-lo?

Até mais...

Link para o comentário
Compartilhar em outros sites

  • 0

Cara try catch é um bloco de tratamento de erro. Ele tenta (try) executar o código que está dentro do try e se der erro entra no catch() executando o tratamento do erro. No meu caso estou colocando o erro na barra de status. Dessa forma um script não impede a execução do resto do código...

Entendeu?

Se não quiser usar não precisa, vai funcionar direitnho sem problemas, isso é apenas uma segurança...

Qualquer coisa posta ae...

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

Muito obrigado mais não foi muito bem o que eu queria!

O certo seria assim:

Quando eu clicar no link abrisse um Div com uma mensagem e apos alguns segundos essa mensagem se fechasse!

Seu código foi massa so que não consegui adaptalo para o Click,

Pode ma ajudar

...::: Os Cara di Rato :::...

O resto vocês já devem seber!

Link para o comentário
Compartilhar em outros sites

  • 0

Vamos ver se consigo te ajudar...

<html>
<head>
<script language="javascript">
function showHide() {
	try{
    	var obj = document.getElementById('div');
         if(obj.style.visibility=='hidden') obj.style.visibility = 'visible';
         else obj.style.visibility = 'hidden';
	} catch(e){status = e.message}
}
function show(){
	document.getElementById('div').style.visibility = 'visible';
    setInterval(hide, 5000);
}
function hide(){
	document.getElementById('div').style.visibility = 'hidden';
}
//setInterval(showHide, 1000);
</script>
</head>
<body onload="hide();">
<a href="javascript:show();" onclick="">Mostra div</a>
<div id="div" style="{overflow: auto; width: 100; height:100; background:#000000;}"><font color="#FFFFFF">Teste</fotn></div>
<form name="form">
</form>
</body>
</html>

Vê se é isso, qualquer coisa posta ae...

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu cara isso resolveu grande parte de meus problemas!

Agora só falta o outro tipo que eu queria que é o seguinte

Eu tenho um ckeckbox, e quando eu o marcar , apareça uma Div dizendo que ele foi aberto , e quando eu desmarcer esse mesmo check apareça outro Div dizendo que ele foi fenhado .

Tando o Div(on) , quanto o Div(off) têm um botao para fechalos!

E ai deupara entender? podem me ajudar?

Link para o comentário
Compartilhar em outros sites

  • 0

Se tu olhar alguns códigos atrás(ou pra frente) eu fiz um codigo prum cara q ele queria q quando colocasse o mouse sebre um link aparecesse uma mensagem, tu pode utilizar o mesmo, e verificar se está checado ou não e passar a mensagem.

Dá uma olhada no codigo e se não entender algo posta ae.

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,2k
    • Posts
      651,9k
×
×
  • Criar Novo...