11
votes

Comment ouvrir un lien dans JQuery sans informations de référence

J'ai besoin d'ouvrir un lien de JQuery, mais je dois éviter d'envoyer les informations de référence. Dans des mots plus courts, j'ai besoin de simuler rel = "noreferrer"

est-ce réalisable?


0 commentaires

4 Réponses :


3
votes

Je pense que chaque navigateur est apparu automatiquement à toutes les informations sur toutes les demandes, et il n'ya aucun moyen de le modifier directement avec JavaScript.

Après avoir récrécié le Web, vous avez quelques options:

  1. Lancez le lien d'une application flash
  2. Lancez le lien d'un applet Java
  3. Exécutez votre URL à travers un service de cloaker / spoofer de référent

    Toutes les options sont laides et je ne les recommanderais pas pour des raisons de convivialité. Je baste sur cela d'une vieille Google Answers Question , mais Je pense que les réponses sont debout.


0 commentaires

1
votes

Vous pourriez avoir jQuery écrire un lien avec l'attribut rel. / code> défini sur noreferrer , puis appelez-le avec $ (link_you_made) .Cliquez sur () .


2 commentaires

Ceci est une fonctionnalité HTML5, et je pense que seuls les derniers navigateurs WebKit le supportent.


Exactement, en chrome, cela fonctionne parfaitement. FFX 3.6 Pas tellement. IE ... aucun moyen.



1
votes

Vous ne savez pas exactement ce que vous voulez dire en ouvrant un lien "à partir de jQuery", mais paramètre window.location ne transmet pas directement aucune information de référence.

Donc, si vous avez un lien vous voulez n'abandonner aucune information de référence que vous pourriez faire quelque chose comme ceci: xxx

edit : il suffit de tester et il ressemble à Firefox Est-ce que passe des informations de référence via une fenêtre window.location change. Donc, malheureusement, ce n'est pas une solution complète / cross-navigateur ...

aussi comme Sczizzo souligne dans le commentaire ci-dessous, il peut y avoir des moments où cela ne sera pas fiable (par exemple, je suis Je ne sais pas si / comment cliquez sur Fires lorsque vous cliquez sur un lien dans Firefox pour l'ouvrir dans un nouvel onglet).


3 commentaires

Je ne suis pas sûr que cela fonctionnera comme prévu. Le navigateur peut contourner complètement le gestionnaire d'événements de JQuery.


@sczizzo: tu as raison (voir la réponse mise à jour), mais je ne pense pas qu'il y ait une façon de le faire (au-delà de la suggestion de Cory Larson d'utiliser quelque chose comme Flash), et je pense que c'est la réponse la plus simple qui va au moins couvrir les situations .


Sachant cette fenêtre.Location ne coupe pas cela est utile, mais cette réponse est super évolue, ce n'est pas un forum, mais un site de questions-réponses, envisagez de le rehrasser. Merci



10
votes

Une solution rapide pour faire un lien sans référateur ouvert.

function open_link(url)
{
    instance = window.open("about:blank");
    instance.document.write("<meta http-equiv=\"refresh\" content=\"0;url="+url+"\">");
    instance.document.close();
    return false;
}


0 commentaires