Ir para conteúdo

Arquivado

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

Diego Macêdo

[Resolvido] JQuery - Função load() assim que carregar

Recommended Posts

Amigos, estou usando a função load() do JQuery para fazer com que um menu tenha a possibilidade de carregar outras páginas dentro de uma div chamada "centro".

 

Como eu faria para que assim que carregar o layout do site, ele já carregar uma dessas páginas (ex.: "Home" - home.php)

 

<script type="text/javascript">
$(document).ready(function(){
	// HOME
	$('#home').click(function(){
		$('#direita').load('home.php');
		return false;
	});
	// SOBRE
	$('#sobre').click(function(){
		$('#direita').load('sobre.php');
		return false;
	});
	// FILIADAS
	$('#filiadas').click(function(){
		$('#direita').load('filiadas.php');
		return false;
	});
	// NOTÍCIAS
	$('#noticias').click(function(){
		$('#direita').load('noticias.php');
		return false;
	});
	// GALERIA
	$('#galeria').click(function(){
		$('#direita').load('galeria.php');
		return false;
	});
	// CONTATO
	$('#contato').click(function(){
		$('#direita').load('contato.php');
		return false;
	});
});
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tentou assim:

<script type="text/javascript">
$(document).ready(function(){
	// HOME
	$('#direita').load('home.php');
});
</script>
?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso resolveu meu problema, agora as páginas que estão sendo abertas dentro dela não estão capturando o "charset=iso-8859-1", sendo assim as palavras com acentuação e cedilha estão sendo substituídos por um losango com interrogação dentro.

 

Na página "home.php", por exemplo, eu botei a tag pra definir também o charset e mesmo assim continua o problema.

 

Como se resolveria isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora as páginas que estão sendo abertas dentro dela não estão capturando o "charset=iso-8859-1"

 

Ai já não tem mais nada a ver com Javascript ou AJAX especificamente... qual servidor está utilizando ?

qual linguagem dinâmica?

 

tentou colocar:

<?php
	header("Content-Type: text/html; charset=ISO-8859-1");
no inicio do documento?

Está puxando o conteudo de um banco de dados ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente funcionou essa solução do header do PHP.

 

Estou sim, mas agora acho que já na importa mais, pois já está funcionando corretamente.

 

Muito obrigado William, mais uma vez você dando uma força aí pra mim! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Tópico resolvido!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, você pode diminuir bastante seu código!

 

<html>
<head>
<title></title>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){

  $('a').click( function(){

    var href = $(this).attr('href');// pega o valor do atributo href da âncora clicada
    $('#direita').load(href);
    return false;

  });

});
</script>
</head>
<body>
<a href="home.php">Home</a>
<a href="sobre.php">Sobre</a>
<a href="filiadas.php">Filiadas</a>
<a href="noticias.php">Noticias</a>
<a href="galeria.php">Galeria</a>
<a href="contato.php">Contato</a>
</body>
</html>

 

 

Abraço e boa sorte!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem interessante esse método, realmente iria diminuir bastante o código. Não tenho experiência com o JQuery, mas analisando o código que você passou, to vendo que ele pegaria todos os valores do atributo "href" de qualquer tag <a> do html e abriria na div #direita, correto?

 

Isso seria uma opção pra quando se quer abrir todas as páginas realmente SOMENTE dentro da tal DIV. Vou analisar o projeto pra ver se num vai ser necessário abrir em outra div ou coisa do tipo. Mas a princípio será bem útil mesmo.

 

Depois eu te digo o resultado por aqui ou por PM. Muito obrigado!

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não necessariamente.

você pode colocar uma classe nas ancoras que deseja abrir com ajax e dessa forma o script funcionaria apenas nas ancoras com essa classe.

veja:

 

<html>
<head>
<title></title>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){

  $('.ajax').click( function(){

    var href = $(this).attr('href');// pega o valor do atributo href da âncora clicada
    $('#direita').load(href);
    return false;

  });

});
</script>
</head>
<body>
<a href="home.php" class="ajax">Home</a>
<a href="sobre.php" class="ajax">Sobre</a>
<a href="filiadas.php" class="ajax">Filiadas</a>
<a href="noticias.php" class="ajax">Noticias</a>
<a href="galeria.php" class="ajax">Galeria</a>
<a href="contato.php" class="ajax">Contato</a>
</body>
</html>

flw

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.