2010-12-15 5 views
3

Je veux ouvrir une fenêtre dans un nouvel onglet, mais quand je veux que cette page d'ouverture soit active, pas la nouvelle. Comment puis-je faire ... Un grand mercifenêtre ouvre-porte, ou

mon code est quelque chose comme ceci:

<script language="javascript"> 
    window.open("http://www.google.ro"); 
    window.opener.location.focus(); 
    </script> 
+0

Juste pour clarifier: Le code ci-dessus est dans la fenêtre parent, ou la fenêtre de l'enfant? –

+0

est dans la fenêtre parent. Sur ma page j'ai des bannières, quand je clique dessus j'ai une page de détails à ce sujet, et les clients veulent quand ils cliquent sur la bannière, puis ouvrent ma page de détails et leur site Web, mais je veux rester dans mon site Web. – cosy

Répondre

4

Pour donner le focus à la nouvelle fenêtre (mais vous ne voulez pas que, et il sera probablement mise au point par défaut):

var newWindow = window.open("http://www.google.ro", '_blank'); 
newWindow.focus(); 

Je ne pense pas qu'il soit possible de voler le focus des nouveaux onglets ouverts. Je n'ai trouvé aucune déclaration officielle le disant, mais tous les articles que j'ai trouvés sur ce sujet parlent de configurer votre navigateur pour ouvrir les onglets par défaut sans mise au point.

La « solution » que je pouvais venir avec est celui-ci:

window.open("http://google.com", "_blank"); 
window.alert('Hello there! This is a message that annoys you, the user.'); 

Notez qu'il est possible de changer d'orientation lors de l'ouverture popups.

Learn more about the window object.


Hors sujet Note: Cette réponse se 2 des votes dans sa forme initiale totalement incorrecte confirme mes soupçons que la plupart que les utilisateurs votent aveuglément et basé sur combien la réputation de la personne qui répond a.

+2

Je pense que l'OP veut un pop-under. –

+0

L'homme n'est pas la nouvelle fenêtre, je veux que la fenêtre d'ouverture se concentre dessus – cosy

+0

Dans mon cas, ce n'est pas sur le même domaine ... Ahh – cosy

3

Cela fonctionne pour moi ...

var newWindow = window.open('http://www.google.ro', '_blank', 'height=300,width=300,menubar=0,status=0,toolbar=0', false); 

window.focus(); 
+0

Je veux que la nouvelle fenêtre s'ouvre dans un nouvel onglet, pas comme ça ... – cosy

+0

Cela fonctionne aussi pour moi, et c'est ce que je pensais que l'OP demandait - ouvrir un nouvel onglet mais avoir le focus sur l'onglet actuel. * Cependant * Je vois un flash où le nouvel onglet s'ouvre, très brièvement prend la mise au point, puis l'onglet initial reprend le focus. De toute façon autour de cela? – okyanet

1

Pour redonner le focus à la fenêtre d'ouverture, essayez d'utiliser window.focus(window.name); au lieu de window.opener.location.focus();

Questions connexes