Ir para conteúdo

Arquivado

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

supino

Probleminha IE e FIrefox

Recommended Posts

Probleminhas, estou fazendo(tentando) um chat eis que surge um problema quando um usuário do IE escreve algo e envia o chat quando aberto no firefox atualiza, mas quando ocorre o oposto o IE e o Opera não atualizam.

 

A idéia do código é a seguinte:

Quando eu atualizo a pagina ele guarda em um text(ultimaMen) a ultima atualização deste usuáro, ai a cada 3 segundos verifico(via ajax) se uma varialvel que guarda a ultima atualização é igual ao valor do text(ultimaMen). O grande problema é que no IE e no Opera este text não é atualizado ai quando a função verifica se esta diferente, ela encontra valores iguais e não atualiza. Abaixo coloquei o trecho de código que achei mais relevante se alguem quiser todas as páginas é só falar.

 

 

Pagina chat.asp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Chat Felipe</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><script language="javascript" type="text/javascript" src="funcoes.js"></script><%'FUNÇÃO CHAMADA A CADA 3 SEGUNDOS PARA AVALIAR SE OUVE MUDANÇA response.write"<script>"response.write"function atualizaTempo(){"response.write 		"setTimeout('atualizaTempo()', 3000);"response.write "	 ultimaMensagem(document.escrever.ultimaMen.value);"response.write"}"response.write"</script>"%><link href="estilo.css" rel="stylesheet" type="text/css"><%'//QUANDO O USUÁRIO APERTAR F5 E JA ESTIVER LOGADO NÃO APARECERA A PAGINA DE LOGINif session("nome") = false then 	response.write"<body onLoad='java script: loadPaginaChat();'>"else	response.write"<body onLoad=""java script: retiraLogin(); enviaMensagem(document.escrever.g_usuario.value,'atualizarLogo');"">"end if%><div id="mae">   <div id="login"> 	<form action="#" name="login">	  Nome: 	  <input type="text" name="usuario" id="usuario" size="12" maxlength="12">	  <input type="button" value="Entrar" onClick="java script: enviaMensagem(document.login.usuario.value, 'Entrou na sala'); retiraLogin(); document.escrever.g_usuario.value = document.login.usuario.value;">	</form>  </div>    <div id="conversa">  </div>    <div id="escrever"> 	<form action="#" name="escrever">	  <input type="hidden" name="g_usuario" id="g_usuario">	  <textarea cols="70" rows="3" name="mensagem" id="mensagem"></textarea>	  <input type="text" name="ultimaMen" id="ultimaMen">	  <input type="button" value="Enviar" onClick="java script: enviaMensagem(document.escrever.g_usuario.value,document.escrever.mensagem.value); document.escrever.mensagem.value = '';">	</form>	<a href="#" onClick="java script: enviaMensagem(document.escrever.g_usuario.value,'limpaLogo'); enviaMensagem(document.escrever.g_usuario.value,'atualizarLogo');">Limpar 	Tela</a> <a href="#" onClick="java script: enviaMensagem(document.escrever.g_usuario.value,'atualizarLogo');">Atualizar</a>   </div></div></body></html>

 

 

 

Função que recebe o valor antigo do text, verifica se a mudança de valores e retorna um novo valor a este text

function ultimaMensagem(ultAtu) {	if(document.getElementById) { 	var exibeResultado = document.getElementById('ultimaMen'); 	var ajax = openAjax();	ajax.open("GET", "mostra.asp", true); //espa pagina somente retorna uma variavel chamda atual que garda a ultima atualização realizada pelos participantes do chat.	ajax.onreadystatechange = function() {		if(ajax.readyState == 4) { 			if(ajax.status == 200) {			var resultado = ajax.responseText; 			resultado = resultado.replace(/\+/g," ");			resultado = unescape(resultado); 			document.getElementById('ultimaMen').value = parseInt(resultado);			//document.escrever.ultimaMen.value = parseInt(resultado);				//se o resultado passado for diferente então atualiza				if(parseInt(ultAtu) != parseInt(resultado) ){					enviaMensagem(document.escrever.g_usuario.value,'atualizarLogo');				}			} else {			exibeResultado.innerHTML = "Erro: ";			}		}	}	ajax.send(null); // submete	}}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz o debug e o problema é quando o novo valor é passado(só funciona no Firefox) para o campo "ultimaMen". Verifiquei o console de erros e não consta nenhum erro.

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.