Ir para conteúdo

POWERED BY:

Arquivado

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

Skie

Carregar em Div

Recommended Posts

Olá, criei um site que possui um menu em flash e o conteudo do site é carregado por um codigo em ajax.

Coloquei um link no menu(flash), e ele não funciona pois os links se iniciam com o simbolo '#', Ex.: #contato(carrega na div o conteudo da pagina: contato.html), não sei oq devo fazer!! Se alguém poder me ajudar agradeço!!

 

Código Ajax:

$(document).ready(function(){  
   var content = $('#conteudo');  

   //pre carregando o gif  
   loading = new Image(); loading.src = 'imagens/carregando.gif';  

   $('a').click(function( e ){  
       var arq = pega_arq( $( this ).attr('href') );  
       abre( arq, content );  
   });  

   /* iniciando com a home */  
   abre( pega_arq( document.location.href ), content );  
});  
function abre( href, content ){  
   content.html( '<div id="carregando"><img src="imagens/carregando.gif" alt="carregando" /> Carregando...</div>' );  

   $.ajax({  
       url: href,  
       success: function( response ){  
           content.delay(1000).hide().html( response ).fadeIn();  
       }  
   });  
}  
function pega_arq( url ){  
   var file = url.split('#');  
   return ( file[1] ) ? file[1]+'.php' : 'principal.php';  
}

 

Código do flash:

on (release)
{
   getURL("#contato", "");
}

 

Abraços =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

oq você tem q fazer é o flash chamar a função js diretamente:

http://wbruno.com.br/2012/02/22/flash-chamando-funcao-javascript-javascript-chamando-funcao-flash-externalinterface/

 

 

ps: esse codigo q você postou eu que fiz :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa, como você é rapido em Bruno! =D

Me diz uma coisa..como faço para chamar essa função ae do carregamento ajax, no flash?

 

Pois so novo no assunto! estou criando um site atraves de tutoriais! Se tiver como me explicar oq colocar no flash...atraves dos codigos que eu postei logo acima!

 

E aproveitando o tópico, tem como eu fazer uma url amigavel(htaccess), com links iniciados com '#'? Pois tentei e não consegui!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem sim cara, leia o link que postei.

 

lá tem oque você precisa fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno, tem como eu fazer uma url amigavel(htaccess), com links iniciados com '#'? Pois tentei e não consegui!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem sim.

 

Como você tentou ?

 

basta cancelar a ação do link [ .preventDefault() ], se não haverá o refresh html, alterar os trechos do script responsáveis por capturar a hash.

E então trabalhar com um history.pushState

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno, você não entendeu oq eu falei...eu fiz outra pergunta, aproveitando o tópico.

Estou perguntando como posso fazer uma url amigável(pelo .htaccess).

 

Exemplo do código q fiz(mas infelizmente não funciono):

 

RewriteEngine On

RewriteRule principal.html$ http://localhost/#principal [L]

 

 

Se poder também me ajudar!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas nesse caso, você não pode ter a hash, por isso eu respondi aquilo.

 

 

.htaccess não processa nada que venha depois da hash.

a URL amigavel não pode conter o caracter #

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hm, entendi!

 

Bruno, eu sou novo no assunto(Flash)... Ae se podesse me dar uma grande ajuda, como por exemplo, criar um codigo usando o que eu coloquei acima para que o flash funcione com a Hash '#'..Agradeceria bastante! Pois até agora ainda não consegui adicionar!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu também não trabalho com flash, desculpe.

 

O máximo que consigo te ajudar é aquele link. Lá tem um script que já usei uma vez q precisei fazer o flash chamar uma função javascript.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ae Bruno, descobri uma maneira que funciona no flash, mas a url não muda! Mas o site ta funcionando perfeitamente, só queria que trocasse a url! Ex.: seusite.com.br/#contato

 

Codigo Ajax:

function Load(url, div, tipo, campos)
{
   var ajax = null;
if(window.ActiveXObject)
	ajax = new ActiveXObject('Microsoft.XMLHTTP');
else if(window.XMLHttpRequest)
	ajax = new XMLHttpRequest();


if(ajax != null)
{
	var cache = new Date().getTime();
	ajax.open(tipo, url + "&cache=" + cache , true);
	ajax.onreadystatechange = function status()
	{
	    if(ajax.readyState == 4){
		if(ajax.status == 200){
			document.getElementById(div).innerHTML = ajax.responseText;
			var texto=unescape(ajax.responseText);
			extraiScript(texto);
		}
	    }else if(ajax.readyState == 0)
		document.getElementById(div).innerHTML = '';
	    else if(ajax.readyState == 3)
		document.getElementById(div).innerHTML = '';
	    else
		document.getElementById(div).innerHTML = '';
	}

	if(tipo == "POST"){
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
		ajax.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
		ajax.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
		ajax.setRequestHeader("Pragma", "no-cache");
		ajax.send(campos); 
	}else {
	    ajax.send(null);
	}
}

}

 

Flash:

on (release)
{
   getURL("javascript: Load('#principal', 'conteudo', 'get');", "");
}

 

index.php -- Body

<body>
   <?PHP if(isset($_GET["go"]))
   {
if(file_exists($_GET["go"].".php"))
{
	include($_GET["go"].".php");
}else{
	include("404.php");
}
   }else{
   ?>
   <div id="conteudo></div>
</body>

 

Tipo, está funcionando normalmente! Sendo q eu queria que funcionasse igual o seu trocando a url! Só isso msm!

 

Abraços =D

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.