Bonjour, je pense qu’il s’agit moins d’un bug que d’un comportement inattendu…
Sur mon Mac, j’ai l’habitude d’utiliser ⌘+Clic pour ouvrir les liens dans de nouveaux onglets. Lorsque je fais cela sur « Raccourcis clavier » dans le menu hamburger, un nouvel onglet s’ouvre sans afficher les raccourcis clavier.
La navigation pour ce « lien » est gérée dans l’application. J’ai mis lien entre guillemets car ce n’est pas vraiment un lien, puisqu’il ne pointe vers aucune adresse spécifique.
Cela ouvre simplement une fenêtre modale ou une boîte de dialogue. Il n’est donc pas possible d’ouvrir ce lien dans un nouvel onglet et d’afficher cette fenêtre modale.
Bonjour, je comprends. Je voulais simplement souligner que cela semble être un comportement inattendu du point de vue de l’utilisateur, car visuellement, « Raccourcis clavier » ressemble exactement à un lien. S’il existe un moyen d’indiquer que le processus « ouvrir un nouvel onglet » ne fonctionnera pas, ce serait idéal. Je pense que cela n’a pas besoin d’être priorisé, bien sûr — je ne imagine pas que trop de personnes rencontrent ce problème.
À titre d’information, supprimer complètement l’attribut href (au lieu de le définir sur une chaîne vide, ce qui constitue une référence vers le document actuel) devrait empêcher le lien d’être ouvert dans un nouvel onglet, du moins dans la plupart des navigateurs.
C’est juste, une balise ancre sans href est valide en HTML5.
Le problème avec sa suppression est qu’elle retirerait alors le lien de l’index de tabulation, ce qui signifie que vous ne pouvez pas atteindre ce lien avec le clavier ou d’autres méthodes de saisie alternatives.
Nous pouvons résoudre cela en ajoutant tabindex: 0.
Nous pouvons donc faire quelque chose comme ceci :
J’ai l’impression que c’est une légère amélioration par rapport à l’ouverture d’un nouvel onglet, mais cela reste étrange que rien ne se produise lorsque j’essaie d’ouvrir ce lien dans un nouvel onglet… surtout parce que c’est le seul lien du menu qui se comporte ainsi.
Idéalement, nous devrions ouvrir la modale du clavier dans tous les cas. Dans /widgets/link.js.es6, nous avons :
click(e) {
if (wantsNewWindow(e)) {
return;
}
...
Il semble donc que nous empêchions toute action au clic si cela demande une nouvelle fenêtre/onglet… Je me demande si nous pouvons réorganiser un peu cela pour pouvoir ouvrir la modale malgré les touches modificateurs ?