Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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
>
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
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.
>
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... ^^
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.
<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..
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
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
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
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/