jQuery: aller à l’URL avec target = “_ blank”

J’utilise ce bit de code jQuery pour obtenir href du lien:

var url = $(this).attr('href'); 

– et ce bout de code pour aller à ce href:

 window.location = url; 

Tout est juste comme je le veux, sauf que la nouvelle page s’ouvre dans la même fenêtre que la précédente, et je veux qu’elle s’ouvre dans une nouvelle fenêtre ou un nouvel onglet (quelque chose qui aurait été réalisé en HTML en utilisant target = ” _blank “formule.

Question: Comment puis-je ouvrir le href dans la nouvelle fenêtre ou l’onglet avec jQuery?

Merci de votre aide!

Vous devez ouvrir une nouvelle fenêtre:

 window.open(url); 

https://developer.mozilla.org/en-US/docs/DOM/window.open

Utilisation,

 var url = $(this).attr('href'); window.open(url, '_blank'); 

Mise à jour : le href est mieux récupéré avec prop car il retournera l’URL complète et sera légèrement plus rapide.

 var url = $(this).prop('href'); 

Question: Comment puis-je ouvrir le href dans la nouvelle fenêtre ou l’onglet avec jQuery?

 var url = $(this).attr('href').attr('target','_blank'); 

Détecte si un atsortingbut cible a été utilisé et contient “_blank”. Pour les appareils mobiles qui n’aiment pas “_blank”, c’est une alternative fiable.

  $('.someSelector').bind('touchend click', function() { var url = $('a', this).prop('href'); var target = $('a', this).prop('target'); if(url) { // # open in new window if "_blank" used if(target == '_blank') { window.open(url, target); } else { window.location = url; } } }); 

Si vous souhaitez créer la fenêtre contextuelle via jQuery, vous devrez utiliser un plug-in. Celui-ci semble vouloir faire ce que vous voulez:

http://rip747.github.com/popupwindow/

Alternativement, vous pouvez toujours utiliser la fonction window.open de JavaScript.

Notez qu’avec l’une ou l’autre approche, la nouvelle fenêtre doit être ouverte en réponse à la saisie / action de l’utilisateur (par exemple, un clic sur un lien ou un bouton). Sinon, le bloqueur de popups du navigateur ne fera que bloquer le popup.

La fonction .ready est utilisée pour insérer l’atsortingbut une fois le chargement de la page terminé.

 $(document).ready(function() { $("class name or id a.your class name").attr({"target" : "_blank"}) }) 

Essayez d’utiliser le code suivant.

 $(document).ready(function(){ $("a[@href^='http']").attr('target','_blank'); });