Ouvrez le lien href mailto dans un nouvel onglet / fenêtre
J'ai une image qui lors d'un clic, je veux le lien à un mailto:
<a id="mailto" href="mailto:[email protected]" target="_newtab" >
<img src="@Url.Content("~/Content/HomePage/email.png")" alt="email" /></a>
Toutefois, actuellement, une fois cliqué, il va lancer l'e-mail de l'option de choisir un mailto application, et une fois que je choisis, le mailto lien est ouvert dans l'onglet en cours. Ce sera la cause de l'utilisateur de quitter l'application.
Donc, je veux que la page d'envoyer e-mail (gmail, yahoo, etc ) est soit ouvert dans un nouvel onglet ou dans une fenêtre. Une idée de comment faire cela? J'ai essayé les deux target="_newtab" et target="_blank" mais les deux ne fonctionne pas.
Toute aide sera très appréciée.. Merci...
(jQuery méthode est également acceptable si il n'y a pas d'autre moyen, merci)
source d'informationauteur shennyL
Vous devez vous connecter pour publier un commentaire.
mailto appelle les utilisateurs du client de messagerie par défaut. Il n'a pas d'ouvrir une fenêtre ou un onglet dans tous les cas. Si vous souhaitez utiliser une fenêtre ou d'un onglet, vous devez configurer un formulaire et de permettre le formulaire pour l'ouvrir dans votre fenêtre/onglet. Bien sûr, vous aurez à configurer le formulaire pour envoyer un mail avec tout ce que la méthode est disponible sur votre serveur.
cette information est obsolète, il est maintenant possible de le faire, je crois, depuis gmail et d'autres travaux via des liens de navigation. il est cependant le problème que vous ne souhaitez ouvrir dans un nouvel onglet s'ouvre PAS dans un système de client de messagerie, et ouvrir dans un nouvel onglet si c'est un client webmail, sinon, par exemple, les utilisateurs d'Outlook de voir un onglet vierge apparaissent, ce qui est déroutant, en particulier car ils sont les utilisateurs d'Outlook.
Cette réponse est fondée sur cette réponse Ouvrez le href mailto lien dans un nouvel onglet /fenêtre.
Droit maintenant, de nouveaux navigateurs prennent en charge certains de messagerie web, les interfaces (Comme Gmail, Yahoo Mail, AoL, etc.).
Donc on peut simplement ouvrir une nouvelle fenêtre (Support navigateur plus ancien, les nouveaux navigateurs juste ouvrir un nouvel onglet) et ajouter une solution de secours (En cas de non-javascript utilisateur) à l'aide de preventDefault par défaut et le lien de redirection.
http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-flow-cancelation
https://developer.mozilla.org/es/docs/DOM/event.preventDefault
https://developer.mozilla.org/en-US/docs/Web/API/Window.open
Comme suit:
<a onClick="javascript:window.open('mailto:[email protected]', 'mail');event.preventDefault()" href="mailto:[email protected]">Send a e-mail</a>
http://jsfiddle.net/cNUNP/
De crédit à https://stackoverflow.com/a/9880404/1107020
Crois que c'est tout.
Salutations, Marcos.
Vous n'avez pas besoin de Javascript/Jquery pour cela. Un lien standard fonctionne (sauf Firefox v30+ à cause d'un bug, voir ci-dessous).
Comme de Firefox 30, ne fonctionne pas dans Firefox en raison d'un bug. Il s'ouvre dans le même onglet ET remplace l'histoire, pour frapper en arrière ne vous apportera pas de retour à la page où l'mailto: lien.
Je sais que c'est une vieille question, mais ce fil de discussion a eu la meilleure série de réponses s'il est trouvé. J'ai modifié Marcos est la Réponse ci-dessus de fermer l'onglet vide qui est créé si le client a un externe gestionnaire de messagerie
référence de réponse
JS (w\ jQuery pour les gestionnaires d'événements)
jsfiddle
Variante 1 (JavaScript):
Variante 2 (JavaScript):
Variante 3 (jQuery):
Variante 4 (jQuery):
HTML Attribut cible: https://www.w3schools.com/tags/att_a_target.asp
Il y a un bon marché html hack pour ce problème.....
Le lien sur une page...
Sur mailto.html....
_blank ouvre un nouvel onglet/fenêtre et la balise meta fait le reste. lien en remplacement offcourse.
Avez-vous essayé le "milieu-cliquez sur" ( "Ouvrir dans un nouvel onglet" ) ?
Il fonctionne pour moi
(http://forums.mozillazine.org/viewtopic.php?f=7&t=1842595)
bien qu'il semble particulièrement étrange de demander à l'utilisateur au Moyen-cliquez sur
De toute façon j'ai trouvé une pseudo solution qui semble fonctionner dans FF 25/Chrome 35
1.- Configurer votre lien à quelque chose comme ceci:
2.- À l'aide de javascript ( avec jquery dans l'exemple), l'installation d'une onlclick événement comme:
Cela ouvre un vide nouvelle fenêtre/onglet et les modifications ultérieures de son emplacement, de sorte que le protocole de messagerie gestionnaire n'est pas en mesure de toto loi jusqu'à ce que la nouvelle fenêtre est déjà ouverte
Pas testé avec un client de messagerie Local ( Outlook et coll.)