Ir para conteúdo

POWERED BY:

Arquivado

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

FabianoM

Ajax favoritos+flash

Recommended Posts

Bom dia a todos.

 

Estou utilizando um script (jquery) ajax utilizado para que a página ajax possa ser salva nos favoritos e para que funcione com o botão voltar, pois altera a url. O problema é o seguinte, o meu link deve passar além do "href", o atributo "rel", tudo funciona perfeitamente com os links, porém em flash não tenho como passar o atributo rel, sendo assim o link não funciona com o flash (obs.: sem o "rel" no firefox funciona, não funciona no google chrome e nem no IE6).

 

Alguem saberia como consigo corrigir isto, acredito que a unica forma de passar o rel em flash seria criando uma função javascript para chamar no flash, porém não sei como criar essa função.

 

Abaixo seguem os códigos:

 

Código do link:

 

<a href="#pagina.php" rel="history">PÁGINA</a>

Código do script que utilizo para o ajax:

 

<script type="text/javascript">
	

  // PageLoad function
	// This function is called when:
	// 1. after calling $.historyInit();
	// 2. after calling $.historyLoad();
	// 3. after pushing "Go Back" button of a browser
	function pageload(hash) {
		// hash doesn't contain the first # character.
		if(hash) {
			// restore ajax loaded state
			$("#col-dir").load(hash);
		} else {
			// start page
			//$("#load").empty();
			 $('#col-dir').load("inicial.php"); // abre a pagina inicial ao abrir o site
		}	 
	};
	
	//start: function(elementLink){
	
	$(document).ready(function(){
		// Initialize history plugin.
		// The callback is called at once by present location.hash.
		$.historyInit(pageload);
		
		// set onlick event for buttons
	 //  if((elementLink.getAttribute('rel') == 'history')){
		
	   $("a[@rel='history']").click(function(){
			//
			var hash = this.href;
			hash = hash.replace(/^.*#/, '');
			$("#col-dir").html('<div class="tarjaTit"><img src="imagens/ajaxloader.gif"></div>');
			// moves to a new page.
			// pageload is called at once.
			$.historyLoad(hash);
			return false;
	   });
	});
   
	</script>

Então é isso, gostaria de saber como chamar o link através de uma função, sendo que passe o atributo "rel" através dela.

 

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte:

 

fiz no link o seguinte:

 

<a href="java script:setaURL('#pagina.php');">PÁGINA</a>

e essa função criei assim:

 

<script type="text/javascript">

	function setaURL(url){
		var link = document.createElement('a');
		link.setAttribute('rel','sidebar');
		link.setAttribute('href',url);
	}

</script>

meu objetivo com isso seria criar um link dentro dessa função para ( com o createElement) e a partir dai setar seu href e seu atributo rel, para assim passar somente a chamada dessa função no flash. Porém não sei agora como posso executar esse link dentro dessa função setaURL, pq ai está apenas criando, queria q executasse o link criado.

 

Se alguém tiver alguma idéia fico agradecido. Caso isso não funcione, também estava pensando se não tem alguma forma de alterar esa parte do código que passei anterirormente:

 

$(document).ready(function(){
		// Initialize history plugin.
		// The callback is called at once by present location.hash.
		$.historyInit(pageload);
		
		// set onlick event for buttons
	 //  if((elementLink.getAttribute('rel') == 'history')){
		
	   $("a[@rel='history']").click(function(){
			//
			var hash = this.href;
			hash = hash.replace(/^.*#/, '');
			$("#col-dir").html('<div class="tarjaTit"><img src="imagens/ajaxloader.gif"></div>');
			// moves to a new page.
			// pageload is called at once.
			$.historyLoad(hash);
			return false;
	   });
	});

porque é nessa parte ali ( $("a[@rel=history]").click(function()) que ele executa os links com rel=history. Será que não tem como colocar outra coisa, para que pegue sem o history, para que nao precise passar o rel pelo flash??

 

Não sei se fui muito claro em minhas dúvidas, mas se alguém puder ajudar eu agradeç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.