Ir para conteúdo

POWERED BY:

Arquivado

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

LeoO_DF

Problemas com erros no console

Recommended Posts

eu tenho um sistema de idioma em meu site que ele identifica o seu País e aplica o idioma mais apropriado para a sua localidade, eu uso o geoip, o problema é que eu tenho uma função ajax que ele pega uma determinada url que é disparada e realiza a sua função com o $.get e retorna uma determinada ação na pagina atual, o problema é que esses 2 sistemas não se dão bem junto o geoip dispara erros no console:

JXr5HgB.png

 

o Código que eu uso na função é:

var requisicao = null;
$( document ).delegate( "*", "click", function(event) {
	var url = $(this).attr("ajaxfy");
	if(url != "" && url != null)
	{
		if(requisicao) 
		{
			requisicao.abort();
		}
		requisicao = $.get("Administrativo/Conteudo/"+url, function(sucesso){ ExtraiScript(sucesso); });
	}
});
function ExtraiScript(texto){
	var ini, pos_src, fim, codigo;
	var objScript = null;
	ini = texto.indexOf('<script', 0)
	while (ini!=-1){
		var objScript = document.createElement("script");
		//Busca se tem algum src a partir do inicio do script
		pos_src = texto.indexOf(' src', ini)
		ini = texto.indexOf('>', ini) + 1;

		//Verifica se este e um bloco de script ou include para um arquivo de scripts
		if (pos_src < ini && pos_src >=0){//Se encontrou um "src" dentro da tag script, esta e um include de um arquivo script
			//Marca como sendo o inicio do nome do arquivo para depois do src
			ini = pos_src + 4;
			//Procura pelo ponto do nome da extencao do arquivo e marca para depois dele
			fim = texto.indexOf('.', ini)+4;
			//Pega o nome do arquivo
			codigo = texto.substring(ini,fim);
			//Elimina do nome do arquivo os caracteres que possam ter sido pegos por engano
			codigo = codigo.replace("=","").replace(" ","").replace("\"","").replace("\"","").replace("\'","").replace("\'","").replace(">","");
			// Adiciona o arquivo de script ao objeto que sera adicionado ao documento
			objScript.src = codigo;
		}else{//Se nao encontrou um "src" dentro da tag script, esta e um bloco de codigo script
			// Procura o final do script
			fim = texto.indexOf('</script>', ini);
			// Extrai apenas o script
			codigo = texto.substring(ini,fim);
			// Adiciona o bloco de script ao objeto que sera adicionado ao documento
			objScript.text = codigo;
		}

		//Adiciona o script ao documento
		document.body.appendChild(objScript);
		// Procura a proxima tag de <script
		ini = texto.indexOf('<script', fim);

		//Limpa o objeto de script
		objScript = null;
	}
}

A mensagem de erro só aparece quando eu estou usando o geoip o que isso poderia ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tem detalhes do erro dentro do console?

não, apenas isso mesmo, quando eu utilizo a função que postei em que eu tenho o geoip da esse erro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na imagem que você postou: está vendo que do lado esquerdo do GET http://j.max/ tem uma setinha vermelha?

 

Clica nela e posta o resultado aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

E o que tem na linha 1107 do arquivo FuncoesJS.js?

document.body.appendChild(objScript);

do código:

var requisicao = null;
$( document ).delegate( "*", "click", function(event) {
	var url = $(this).attr("ajaxfy");
	if(url != "" && url != null)
	{
		if(requisicao) 
		{
			requisicao.abort();
		}
		requisicao = $.get("Administrativo/Conteudo/"+url, function(sucesso){ ExtraiScript(sucesso); });
	}
});
function ExtraiScript(texto){
	var ini, pos_src, fim, codigo;
	var objScript = null;
	ini = texto.indexOf('<script', 0)
	while (ini!=-1){
		var objScript = document.createElement("script");
		//Busca se tem algum src a partir do inicio do script
		pos_src = texto.indexOf(' src', ini)
		ini = texto.indexOf('>', ini) + 1;

		//Verifica se este e um bloco de script ou include para um arquivo de scripts
		if (pos_src < ini && pos_src >=0){//Se encontrou um "src" dentro da tag script, esta e um include de um arquivo script
			//Marca como sendo o inicio do nome do arquivo para depois do src
			ini = pos_src + 4;
			//Procura pelo ponto do nome da extencao do arquivo e marca para depois dele
			fim = texto.indexOf('.', ini)+4;
			//Pega o nome do arquivo
			codigo = texto.substring(ini,fim);
			//Elimina do nome do arquivo os caracteres que possam ter sido pegos por engano
			codigo = codigo.replace("=","").replace(" ","").replace("\"","").replace("\"","").replace("\'","").replace("\'","").replace(">","");
			// Adiciona o arquivo de script ao objeto que sera adicionado ao documento
			objScript.src = codigo;
		}else{//Se nao encontrou um "src" dentro da tag script, esta e um bloco de codigo script
			// Procura o final do script
			fim = texto.indexOf('</script>', ini);
			// Extrai apenas o script
			codigo = texto.substring(ini,fim);
			// Adiciona o bloco de script ao objeto que sera adicionado ao documento
			objScript.text = codigo;
		}

		//Adiciona o script ao documento
		document.body.appendChild(objScript);
		// Procura a proxima tag de <script
		ini = texto.indexOf('<script', fim);

		//Limpa o objeto de script
		objScript = null;
	}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, você está criando um objeto <script> e assim que você joga ele no document.body (e ele é então executado) o erro acontece.

 

Antes da linha que você me passou existe essa daqui:

objScript.text = codigo;

Pode dar um console.log(codigo) e me colar aqui o conteúdo dessa variável? O problema está dentro dela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, você está criando um objeto <script> e assim que você joga ele no document.body (e ele é então executado) o erro acontece.

 

Antes da linha que você me passou existe essa daqui:

objScript.text = codigo;

Pode dar um console.log(codigo) e me colar aqui o conteúdo dessa variável? O problema está dentro dela.

Não é necessário eu creio, esse código é o seguinte existe uma pagina posterior e nela eu realizo uma função e retorno um script que é enviado a essa função e essa função identifica da tag <script> até </script> e joga o código que retornei la e joga em uma div criada no momento para ser realizada o retorno ou seja o codigo não é fixo e sim variável ele muda de pagina a pagina, um exemplo de seu retorno seria:

echo '<script type="text/javascript">$("div#Options div#AlterarPrivacidade_Compartilhar").removeClass("Ativo"); $(".Seta_Privacidade_Compartilhar").removeClass("Seta_Privacidade_Compartilhar"); $(".Verificar_Compartilhar-'.$Privacidade_Nova.'").addClass("Seta_Privacidade_Compartilhar"); $("div#Options div#AlterarPrivacidade_Compartilhar").html("'.$Novo_Icone.' <font>'.$Texto['Inicio']['Home']['Postagens']['Privacidade'][$Privacidade_Nova].'</font> <div class=Seta_BoxConfigPost></div>"); $(".DropBox").fadeOut("fast");</script>';

Foi uma forma de realizar funções dinamicamente.

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.