Ir para conteúdo

Arquivado

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

Filipe B.

Não consigo abrir links externos com menu usando JS

Recommended Posts

Uso o script abaixo para dar o efeito de ativo ou não nos botões e carregar o conteúdo na DIV content, porém não sou programador e agora todo link externo que tento acessar, como em uma popup por exemplo ele tenta carregar no content e ambos ficam em branco e a página carregando e não sei como fazer para ajustar isso. Gostaria de saber também como faço para quando clickar em um botão do menu lateral o menu do topo voltar ao normal sem nenhuma marcação de ativo.

 

Agradaceria muito a ajuda de alguém!! :worship:

 

Pelo menos aperfeiçoar esse código para que ele leia os links externos da DIV content e não tente carregá-los na mesma DIV e que o conteúdo da página mantenha a informação.

 

Grato;

Filipe Barros Queiroz

 

<script src="jquery.js"></script>
<script>
$(document).ready(function(){
       $("a").each(function() {
       var href = $(this).attr('href');
       $(this).attr('href','javascript:void(1)');
       $(this).click(function(){
       $('#content').html("");
                               $("#carregando").show('slow');
       $.get( href , function(data){
       $('#content').html(data);
       $("#carregando").hide('slow');
       });
       return null;
       });

       });
});
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode atribuir o rel="external" aos links externos, e então testar se possui esse rel, se possuir você deixa abrir, se não possuir, você aplica essa tua função.

 

outra alternativa, seria procurar por http:// (visto q normalmente não colocamos o protocolo para links internos).

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode atribuir o rel="external" aos links externos, e então testar se possui esse rel, se possuir você deixa abrir, se não possuir, você aplica essa tua função.

 

outra alternativa, seria procurar por http:// (visto q normalmente não colocamos o protocolo para links internos).

Willian, fiz assim e funcionou, porém quando carrega a página não funciona ainda abre no content e a popup vazia dai se abro outro link dá página e volto para o home ai o código funciona, estranho né? Aparece um erro de sintaxe talvez por ter repetido o comando, se conseguir aperfeiçoar pra mim agradeço.

 

<script src="jquery.js"></script>
<script>
     $(document).ready(function(){
     $("a").each(function() {
	   var href = $(this).attr('href=http://');
          $(this).attr("target", "_blank");
}
</script>
<script>
     $(document).ready(function(){
     $("a").each(function() {
          var href = $(this).attr('href');
          $(this).attr('href','javascript:void(0)');
          $(this).click(function(){
               $('#content').html("");
      	    	$("#carregando").show('slow');
                $.get( href , function(data){
                       $('#content').html(data);
                       $("#carregando").hide('slow');
                });
               return null;
	   });
       });

});
 </script>

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.