Ir para conteúdo

Arquivado

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

Leandro de Jesus

meu script não funciona no IE6

Recommended Posts

Olá pessoal,

Estou fazendo o esquema de abrir uma página dentro da DIV...

Ele abre em todos os navegadores, IE7,8, FF, Safari, Chrome..

Menos no IE6....

 

Na realidade ele funciona, até o 3º clique depois disso não rola mais.....

 

 

Segue meu código

function GetXMLHttp() {
	var xmlHttp;
	try {
		xmlHttp = new XMLHttpRequest();
	}
	catch(ee) {
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e) {
			try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e) {
				xmlHttp = false;
			}
		}
	}
	return xmlHttp;
}

var xmlRequest = GetXMLHttp();



function abrirPag(valor){

var url = valor;


xmlRequest.onreadystatechange = mudancaEstado;

xmlRequest.open("POST",url,true);

xmlRequest.send(null);


if (xmlRequest.readyState == 1) {
document.getElementById("conteudo_mostrar").innerHTML = "<img src='loading.gif'>";

}


return url;

}


function mudancaEstado(){

if (xmlRequest.readyState == 4){

document.getElementById("conteudo_mostrar").innerHTML = xmlRequest.responseText;

 
}

}

Alguma idéia de como posso resolver isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz algumas alterações:

function GetXMLHttp() {
	var xmlHttp;
	try {
		xmlHttp = new XMLHttpRequest();
	}
	catch(ee) {
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e) {
			try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e) {
				xmlHttp = false;
			}
		}
	}
	return xmlHttp;
}

var xmlRequest = GetXMLHttp();



function abrirPag(valor){

var url = valor;


xmlRequest.onreadystatechange = function(){


if (xmlRequest.readyState == 1) {
document.getElementById("conteudo_mostrar").innerHTML = "<img src='loading.gif'>";

}


if (xmlRequest.readyState == 4){
if (xmlRequest.status == 200){
document.getElementById("conteudo_mostrar").innerHTML = xmlRequest.responseText;
}
else if (xmlRequest.status == 404){
document.getElementById("conteudo_mostrar").innerHTML = "Página não encontrada";
}



}


}

xmlRequest.open("GET",url,true);

xmlRequest.send(null);

você pode usar GET para carregar a página pois não está passando nenhuma informação confidencial...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Rick,

Dessa forma não rolou mais em nenhum navegador

Será porque você chama diferente no link?

 

Estou usando assim meu link

 

<a href="#" onClick="abrirPag('contato.html');">Contato</a>

Algum idéia ??

Compartilhar este post


Link para o post
Compartilhar em outros sites

<a href="#" onclick="java script:abrirPag('contato.html');">Contato</a>

 

Obs. sem espaço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para deixar como arquivo... Caso alguém passe por isso tbm...

Eu resolvi esse problema segue a solução

 

try{
	xmlhttp = new XMLHttpRequest();
}catch(ee){
	try{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
		try{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(E){
			xmlhttp = false;
		}
	}
}

atual=0
function abrirPag(n){

	//Exibe o texto carregando no div conteúdo
	var conteudo=document.getElementById("conteudo")
	conteudo.innerHTML='<div class="carregando">carregando...</div>'

	//Guarda a página escolhida na variável atual
	atual=n

	//Abre a url
	xmlhttp.open("GET", n,true);

	//Executada quando o navegador obtiver o cóidigo
	xmlhttp.onreadystatechange=function() {

		if (xmlhttp.readyState==4){

			//Lê o texto
			var texto=xmlhttp.responseText

			//Desfaz o urlencode
			texto=texto.replace(/\+/g," ")
			texto=unescape(texto)

			//Exibe o texto no div conteúdo
			var conteudo=document.getElementById("conteudo")
			conteudo.innerHTML=texto

 

			//Limpa as classes do menu
			
		}
	}
	xmlhttp.send(null)
}

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.