Abrir en la misma pestaña todos los enlaces de una web

  • Autor Autor linkup
  • Fecha de inicio Fecha de inicio

linkup

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Muy buenas amigos de Forobeta,

Les escribo para pedir su ayuda, resulta que quiero hacer que todos los links de una web se abran en la misma pestaña (lo contrario de _blank), entonces hago la llamada a el archivo .js desde la web de la siguiente forma:

Insertar CODE, HTML o PHP:
<script src="https://ejemplo1.com/archivo.js" type="text/javascript"></script>

Y el archivo js que estoy utilizando es el siguiente:

Insertar CODE, HTML o PHP:
jQuery(document).ready(function($) { 

$('a:not([href^="https://ejemplo2.com"]):not([href^="#"]):not([href^="/"])').addClass('external');
$('a[class="external"]').click(function(){ $(this).attr('target','_self'); });

});

Ahora bien, resulta que esto me funciona a la perfección en las webs con HTTP, sin embargo NO funciona para las webs con HTTPS.

Agradecería muchísimo cualquier tipo de ayuda, un abrazo :encouragement:
 
Última edición:
mmm pusiste la url con https en el codigo?.. ahi la veo con http...
 
mmm pusiste la url con https en el codigo?.. ahi la veo con http...

Así es amigo, me equivoqué al ponerla aquí en el foro nada más...
De todas formas he probado cambiando con http y https en ambas webs (en el archivo .js y en la web donde se usará).
 
Así es amigo, me equivoqué al ponerla aquí en el foro nada más...
De todas formas he probado cambiando con http y https en ambas webs (en el archivo .js y en la web donde se usará).

mmm la consola te indica algo?
 
Pero por defecto no se abren así? O quieres reescribir el codigo?
 
En primer lugar, comentarte que no veo la necesidad de cambiar el atributo del enlace "on click", cuando bien podrías hacerlo así:

Insertar CODE, HTML o PHP:
$('a:not([href^="http://ejemplo2.com"]):not([href^="#"]):not([href^="/"])').addClass('external').attr('target','_self');

Segundo, con respecto a que no funciona con https, no se me ocurre a que se deba... :ambivalence:
 
Me sale:

"Uncaught referenceError: Jquery is not defined"

no se esta cargando jquery... fijate que la libreria sea cargada con // y no http:// (o pon https://)... el // le indica que funcione en http y https