EDIT :
J'ai appris qu'utiliser une autre valeur que _blank
ne fonctionne pas sur les navigateurs mobiles pour ouvrir de nouvelles fenêtres/onglets.
Par exemple, si vous devez ouvrir une nouvelle fenêtre/un nouvel onglet :
-
Cela fonctionne sur tous les navigateurs, même les navigateurs mobiles :
target="_blank"
. -
Cela ne fonctionne pas sur les navigateurs mobiles, mais il fait le travail sur les navigateurs de bureau :
target="new"
.
--
Bien que je l'aie fait fonctionner, je ne suis pas sûr qu'il y ait une meilleure façon de faire, ou si la façon dont je l'ai fait est la bonne/seule façon.
En gros, ce que je fais, c'est remplacer toutes les target="_new"
o target="_blank"
les valeurs d'attributs à target="nw"
De cette façon, une seule nouvelle fenêtre est ouverte et toutes les autres fenêtres s'ouvrent dans celle-ci, afin de ne pas submerger l'utilisateur avec de multiples fenêtres.
J'ajoute également un " Ouvre une nouvelle fenêtre " title=""
attribut.
La solution que j'ai créée est donc celle-ci :
$("a[target='_blank'], a[target='_new']").attr('target','nw').attr('title','Opens in a new window');
Remarquez les deux .attr();
méthodes.
Est-ce la bonne façon d'ajouter deux attributs à un élément ?
J'ai essayé .attr('target','nw','title','Opens in a new window')
mais ça n'a pas marché.
La raison de ma question est le principe DYR (Don't Repeat Yourself), donc si je peux améliorer le code que j'ai, tant mieux, sinon, il est ce qu'il est.
Merci.