Je suis en train de « forcer » Safari ou IE7 pour ouvrir une nouvelle page à l’aide d’un nouvel onglet.
Par programme, je veux dire quelque chose comme :
Je suis en train de « forcer » Safari ou IE7 pour ouvrir une nouvelle page à l’aide d’un nouvel onglet.
Par programme, je veux dire quelque chose comme :
Vous pouvez, dans Firefox, il fonctionne, ajoutez l'attribut target="_newtab" à l'ancre pour forcer l'ouverture d'un nouvel onglet.
<a href="some url" target="_newtab">content of the anchor</a>
En javascript, vous pouvez utiliser
window.open('page.html','_newtab');
Dit que, je suis partiellement d'accord avec Sam. Vous ne devriez pas forcer l'utilisateur à ouvrir une nouvelle page ou un nouvel onglet, sans les montrer un indice sur ce qui va se passer avant de cliquer sur le lien.
Laissez-moi savoir si cela fonctionne sur d'autres navigateur trop (je n'ai pas de chance de l'essayer sur un autre navigateur que Firefox pour le moment).
Edit: ajout d'une référence pour ie7
Peut-être que ce lien peut être utile
http://social.msdn.microsoft.com/forums/en-US/ieextensiondevelopment/thread/951b04e4-db0d-4789-ac51-82599dc60405/
Vous ne pouvez directement contrôler cela, parce que c’est une option contrôlée par les utilisateurs d’Internet Explorer.
Ouverture des pages utilisant Window.open avec un nom différent fenêtre s’ouvrira dans une nouvelle fenêtre de navigateur comme un popup, OR ouvrir dans un nouvel onglet, si l’utilisateur a configuré le navigateur pour ce faire.
Ceux de vous qui tentent d'utiliser les éléments suivants:
window.open('page.html', '_newtab');
devriez vraiment regarder à la fenêtre.méthode open.
Tout ce que vous faites est de dire au navigateur pour ouvrir une nouvelle fenêtre NOMMÉE "_newtab" et de la charge page.html en elle. Chaque nouvelle page, vous charger chargez-le dans la fenêtre. Toutefois, si un utilisateur dispose de son navigateur pour ouvrir une nouvelle page dans de nouveaux onglets au lieu de nouvelles fenêtres, il va ouvrir un onglet. Peu importe, c'est d'utiliser le même nom pour la fenêtre ou onglet.
Si vous voulez des pages différentes pour ouvrir dans différentes fenêtres ou onglets, vous aurez à changer le NOM de la nouvelle fenêtre/onglet à quelque chose de différent, comme:
window.open('page2.html', '_newtab2');
Bien sûr, le nom de la nouvelle fenêtre/onglet pourrait être n'importe quel nom comme page1, page2, page3, etc. au lieu de _newtab2.
C’est à l’utilisateur s’ils veulent utiliser les nouveaux onglets ou nouvelles fenêtres, il n’est pas l’activité du développeur pour modifier ce comportement. Je ne pense pas que vous pouvez le faire.
Bête noire de la mine - je déteste quand les sites me forcer à ouvrir dans une nouvelle fenêtre / onglet - je suis tout à fait capable de prendre cette décision pour moi. Surtout quand ils le font en javascript - c’est vraiment inutile.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.