J'ai un link
dans ma page Web qui ouvre un dialog
qui contient du contenu. En plus d'afficher le contenu dans la boîte de dialogue. Je prévois également d'autoriser que si l'utilisateur souhaite ouvrir ce contenu dans un nouvel onglet à la place, il peut simplement,
Open link in new Tab
.Ainsi, pour afficher un contenu particulier, le même lien ouvre un dialog
s'il y a un événement de clic mais ouvre un nouvel onglet chargé d'informations si l'utilisateur a fait un clic droit et sélectionné pour l'ouvrir dans un nouvel onglet.
Cela vous semble-t-il une bonne idée? Y a-t-il des problèmes d'utilisation associés à cela?
======
Je pense que je n'ai pas pu clarifier mon propos à travers ma question ci-dessus. Permettez-moi de présenter un exemple de scénario ainsi.
Considérons une application comme Gmail qui affiche des listes de courriels. Maintenant, quand vous voulez voir un message, il vous suffit de cliquer dessus et il s'ouvre dans le même onglet. Très agréable! Mais que se passe-t-il si l'utilisateur souhaite ouvrir cet e-mail dans un nouvel onglet et conserver l'onglet de la liste de boîte de réception intact dans l'onglet d'origine. Malheureusement, Gmail UI ne fournit pas cette fonctionnalité. Mais si vous souhaitez fournir cette fonctionnalité (pour ouvrir le courrier électronique dans un nouvel onglet) ainsi qu'en permettant d'ouvrir le contenu dans l'onglet d'origine (via la boîte de dialogue), je suppose qu'une bonne option serait de permettre à l'utilisateur de sélectionner par clic droit si il veut ouvrir le contenu dans un nouvel onglet.
Comme si vous voyez également dans le cas Gmail, je pense qu'ils pourraient afficher le contenu de l'e-mail via une superposition de boîte de dialogue uniquement, mais c'est juste que cela n'a pas l'apparence d'une boîte de dialogue, mais juste une autre page.
J'essaye ceci pour fournir juste une facilité supplémentaire. Mais si l'appareil/logiciel de navigation ne permet pas d'ouvrir le contenu dans un nouvel onglet, cette fonctionnalité supplémentaire ne sera pas là simplement et l'utilisateur peut simplement voir le contenu dans le même onglet d'un simple clic.
Ce que vous proposez est en fait un meilleure pratique pour créer des fonctionnalités accessibles avec Javascript discret. Le code ressemble généralement à ceci:
<a href="/somewhere" id="dialog-link">Open dialog</a>
Ceci est associé à du Javascript:
$("#dialog-link").click(function(evt) { /* Do something */ evt.preventDefault(); });
En utilisant Javascript, le comportement par défaut du lien (visiter l'URL /somewhere
) Est empêché, vous permettant d'exécuter du Javascript à la place. Dans ce cas, cela afficherait la boîte de dialogue à l'utilisateur. Idéalement, vous chargez le contenu de l'URL /somewhere
Dans la boîte de dialogue à l'aide d'AJAX.
Si, pour une raison quelconque, le navigateur de l'utilisateur n'a pas activé Javascript ou ne prend pas en charge Javascript, l'écouteur d'événements ne se déclenchera pas et le lien sera simplement ouvert tel quel.
Cependant, étant donné que le lien hypertexte est juste cela - un lien hypertexte standard - cela me permet de cliquer avec le bouton droit de la souris et d'ouvrir l'URL ciblée dans un nouvel onglet en utilisant les menus contextuels du navigateur standard comme je le ferais pour tout autre lien, car l'écouteur d'événements écoute uniquement un clic gauche .
Alors, tu devrais faire ça? Oui. Il est plus accessible, plus centré sur l'utilisateur et globalement plus utilisable car il permet aux utilisateurs de gérer le lien différemment s'ils le souhaitent, mais fournit par défaut un comportement réactif riche en synchronisation avec votre application par défaut.
Je n'aime pas l'idée que l'utilisateur doive faire un clic supplémentaire juste pour l'ouvrir dans une nouvelle fenêtre. Mon bouton central de la souris en cliquant sur n'importe quel lien ouvre la page dans un nouvel onglet, n'est-ce pas une fonction de navigateur intégrée?
quoi qu'il en soit, je pense que les développeurs Web ne devraient dépendre que du "clic gauche" des utilisateurs pour ajouter des fonctionnalités sur une page Web, le "clic droit" est plutôt un menu contextuel du navigateur.
Si vous voulez vraiment avoir une telle fonctionnalité, vous pouvez peut-être essayer quelque chose comme ceci:
en vol stationnaire, devient
Alors que je m'assois ici en vacances, en tapant cette réponse dans mon blackberry, je me demande comment faire un clic droit sur un lien pour ouvrir le contenu dans un autre onglet lorsque vous utilisez un navigateur qui n'a pas de navigation par onglet et que le mobile n'a pas Souris.
Concevez d'abord pour mobile.
En fait, j'ai plusieurs navigateurs installés et j'ai des onglets disponibles - mais pas le navigateur par défaut. Néanmoins, les clics droit sont un peu un problème sur les mobiles.
Pour les navigateurs de bureau, ils vous permettent principalement d'ouvrir un lien dans un nouvel onglet ou une nouvelle fenêtre, donc je ne sais pas pourquoi vous faites un cas spécial pour cela ici.
Enfin, j'ai un problème avec les liens ouvrant les boîtes de dialogue. Les dialogues (si vraiment nécessaires) doivent être ouverts en cliquant sur les boutons et non sur les liens. En effet, la boîte de dialogue est liée à l'action et non à la navigation de contenu. Les liens doivent s'ouvrir ou accéder au contenu de la page en cours ou d'une page vierge - ou similaire. Lorsque vous les mélangez, les interactions deviennent confuses et confuses.
Savez-vous si les utilisateurs souhaitent en permanence l’action alternative ou seulement rarement? Si vous pensez qu'ils pourraient avoir une préférence non majoritaire, je leur offrirais une option pour ouvrir tous les éléments cliqués dans un nouvel onglet au lieu de la boîte de dialogue.
Je ne pense généralement pas à ajouter des options ou des chemins alternatifs pour les choses que le navigateur fournit nativement. Mais si votre public n'est probablement pas au courant de ces petits extras comme comment forcer un lien dans un nouvel onglet, il est préférable de le prévoir.