Ir para conteúdo

Arquivado

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

Videres

[Resolvido] Ajax

Recommended Posts

Boa tarde pessoal,

 

Estou montando um site onde posso carregar o conteúdo da minha pagina dinamicamente deixando MENU e RODAPE fixo com ajax... Que esta funcionando bem até...

 

Porem quando carrego uma pagina que possui um menu na lateral esquerda do site ele n executa o codigo em JQUERY no menu ... Como ele carrega os conteudos do meu site sem atualizar gostaria de saber se é isso q esta fazendo com que ele n leia minha funcao que executa um efeito no meu menu lateral deixando ele estatico ou é algum outro tipo de problema... Ainda sou muito leigo em ajax estou pesquisando estudando sobre...

 

Quem puder me dar uma orientacao fico muito grato!

 

 

Segue o script do menu lateral do meu site:

 

<script type="text/javascript" src="css/jquery-1.2.1.min.js"></script>

   <script language="javascript">

function initMenu() {

	$('#menuLateral ul').hide();

	$('#menuLateral li a').click(
		function() {
			var checkElement = $(this).next();
			if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
				return false;
			}
			if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
				$('#menuLateral ul:visible').slideUp('normal');
				checkElement.slideDown('normal');
				return false;
			}
		}
	);
    }
	$(document).ready(function() {initMenu();});
</script>

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, é exatamente isso mesmo.

 

para o seu caso, basta usar o método .live

http://wbruno.com.br/blog/2011/03/18/metodo-live-jquery/

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, é exatamente isso mesmo.

 

para o seu caso, basta usar o método .live

http://wbruno.com.br/blog/2011/03/18/metodo-live-jquery/

 

 

Bruno Vlws pela dica to dando uma estudada em .live por enquanto n estou tendo muito sucesso...

 

Vou te mostrar o codigo pra você ter ideia do que estou qrendo fazer...

Na minha pagina principal estou chamando os seguins scripts:

   <script src="Scripts/ajax.js" type="text/javascript"></script>
   <script src="Scripts/instrucao.js" type="text/javascript"></script>

 

No ajax tem

function GetXMLHttp() {
   if(navigator.appName == "Microsoft Internet Explorer") {
       xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
   }
   else {
       xmlHttp = new XMLHttpRequest();
   }

   return xmlHttp;
}

var xmlRequest = GetXMLHttp();

 

na instrucao tem:

function abrirPag(valor){
   var url = valor;

   xmlRequest.open("GET",url,true);    
   xmlRequest.onreadystatechange = mudancaEstado;
   xmlRequest.send(null);

       if (xmlRequest.readyState == 1) {

       }

   return url;
}

function mudancaEstado(){
   if (xmlRequest.readyState == 4){

       document.getElementById("corpo").innerHTML = xmlRequest.responseText;
   }
}

 

 

Entao... consegui fazer com que so o meu conteudo seja alterado.. porem encontrei dois problemas...

1º) é que quando atualizo a pagina ele volta pra home estou tentando descobrir como faço para ele permanecer na pagina atual..

 

2º) Eu ainda n estou conseguindo fazer com que ao abrir a pagina por exemplo quem somos que possue um menu na lateral esquerda feito com jquery, funcione... e como você falou q isso seria normal... estou tentando usar o .live mas ainda n estou conseguindo... como sou leigo estou tentando em aprofundar mais sobre ajax e jquery para entender melhor o .live

 

Agradeco muito por sua orientacao.. ainda n to conseguindo mas vou chegar la.. srsrsr

 

 

Ps.: S puder me sugerir ainda alguma coisa pra eu tentar... vou ficar no aguarde...

Vlws mesmo.. abraco.. espero no futuro poder contribuir da mesma forma com outros participantes do forum.. =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

1º) é que quando atualizo a pagina ele volta pra home estou tentando descobrir como faço para ele permanecer na pagina atual..

http://wbruno.com.br/blog/2011/11/25/carregando-conteudo-ajax-trocando-url-jquery/

 

 

estou tentando usar o .live mas ainda n estou conseguindo...

troque esse código ajax, pelo ajax do jQuery.

No link acima tem oq você precisa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://wbruno.com.br/blog/2011/11/25/carregando-conteudo-ajax-trocando-url-jquery/

 

 

troque esse código ajax, pelo ajax do jQuery.

No link acima tem oq você precisa.

 

 

Bruno consegui fazer com que ele carregue o Script dentro da pagina... depois de muita tentativa... ehheheheheheeh

a unica coisa q n consegui foi fazer com que ao atualizar a pagina ele permaneca nela... srsrsrsrsr

 

Mas to chegando... brigadao... =D

 

 

Ps.: e a minha principal mancada foi pq estava faltando chamar a biblioteca jQuery.... dai n rola... ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

a técnica que eu uso para que permaneça na página, é ir mandando ancoras para a url.

 

#home

#contato

 

e qndo a página carregar, verifico oq tem na hash, e carrego isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<div id="content">
        <?php
            include('php/home.php');

         ?>


</div>

 

Acho q esse seja um dos principais motivos para ele voltar pra home sempre q atualizo... =/

Vou estudar um pouco o q você falou... =D

 

Vlwss Brother abraco..

Compartilhar este post


Link para o post
Compartilhar em outros sites

pow BRUNO tu é o CARA!!!!! ehehheheheheheh

 

CONSEGUiiI!!!! baseado inclusive em um codigo q achei no forum

http://forum.imasters.com.br/topic/403171-pagina-dentro-de-div-ajax-problema-ao-atualizar/

 

Me ajudou muito!! Embora tenha sido dificil de entender fui pesquisando praticamente cada linha dele... ehehheehhe

 

Brigadaoo!!! abraco \o

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu acabei encontrando outro problema...

 

Ele ler o codigo jquery file...

Mas as funcoes js n estou conseguindo fazer com q ele consiga ler....

 

o Codigo q esta fazendo com que carregue os scripts das paginas é esse:

 

function extraiScript(texto){
       // inicializa o inicio ><

       var ini = 0;
       // loop enquanto achar um script
       while (ini!=-1){
               // procura uma tag de script

               ini = texto.indexOf('<script', ini);
               // se encontrar
               if (ini >=0){

                       // define o inicio para depois do fechamento dessa tag
                       ini = texto.indexOf('>', ini) + 1;
                       // procura o final do script
                       var fim = texto.indexOf('</script>', ini);
                       // extrai apenas o script
                       codigo = texto.substring(ini,fim);
                       // executa o script
                       eval(codigo);
               }
       }

}

 

ele funciona perfeitamente quando chamo:

 

 <script language="javascript">
		function initMenu() {
	  $('#menuLateral_Sel ul').hide();

	  $('#menuLateral_Sel li a').click(
		function() {
		  var checkElement = $(this).next();
		  if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
			return false;
			}
		  if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
			$('#menuLateral_Sel ul:visible').slideUp('normal');
			checkElement.slideDown('normal');
			return false;
			}
		  }
		);
	  }
	$(document).ready(function() {initMenu();});
</script>

 

mas quando chamo minhas funcoes em JS:

function validaForm(){

......
}

 

ele n carrega...

 

Ps.: em uma mesma pagina eu carrego um menu lateal com Jquery q funciona... e no centro carrego um formulario.. onde o codigo javaScript que utilizo para validar meu formulario n funciona....

 

Alguem sabe me explicar o pq??

 

Abraco e agradeco desde ja

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver... \o

 

Importei todas as validacoes na minha pagina principal \o

 

Ex.:

<script src="Scripts/validacao1.js" type="text/javascript"></script> 

 

ou seja todos os meus codigos em javaScript importei na minha index.php xD

 

Vlws \o.. espero q ajudem alguem q possua a mesma duvida!>.<

 

Qualquer bronca volto incomodar vcs.. srsrsrs abss \o

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.