Comment identifier si la fenêtre ouverte est un pop-up ou un onglet?

J'ai été confronté à un problème. Je peux ouvrir une fenêtre à l'aide de la méthode window.open. Si je spécifie la hauteur et la largeur de la fenêtre, elle s'ouvre en tant que fenêtre pop-up. Si aucun paramètre n'est donné pour la hauteur ou la largeur, alors Il s'ouvre dans un nouvel onglet.

Y at-il une propriété par laquelle je peux déterminer la fenêtre ouverte était un pop-up ou un nouvel onglet?

Merci Malcolm X

Edit: J'ai étudié cela un peu plus loin.

On dirait qu'il n'y a pas de "type" différent sur ces fenêtres, simplement différentes options. Une façon dont j'ai trouvé de vérifier si c'était un onglet ou une fenêtre est de vérifier window.menubar.visible . Pour l'onglet, qui est une fenêtre complète et normale, il est true , et pour le pop-up, le menu est caché et donc false . Idem s'applique à window.toolbar.visible .

Travaille en FF et Chrome au moins. Malheureusement, pas dans IE. (Test effectué dans IE8, qui est la version que j'ai installée. Pour tester bien sûr …)

Exemple:

 if(window.menubar.visible) { //Tab } else { //"Child" Window } 

Trouvé ce fil: Internet Explorer 8 JS Erreur: 'window.toolbar.visible' est nul ou pas un objet


Si vous spécifiez la largeur et la hauteur, cela signifie que vous devez également spécifier le paramètre de name . Cela peut être utilisé de la même manière que la target dans une étiquette est utilisée, et par défaut, _blank .

Si vous ne spécifiez pas la largeur et la hauteur, je suppose que vous ne spécifiez pas non plus le name et donc il est ouvert avec name=_blank , ce qui signifie un nouvel onglet.

Si vous spécifiez la largeur et la hauteur, définissez-vous un name personnalisé? Cela donne lieu à une fenêtre enfant. Si vous spécifiez un nom ou une chaîne vide comme nom, je vous suggère d'essayer le name:_blank si vous voulez qu'il s'agisse d'un nouvel onglet.

Si la fenêtre a été ouverte avec un nom, vous pouvez toujours la window.parent de la fenêtre enfant. Si vous ouvrez avec _blank je ne suis pas sûr si vous pouvez obtenir la window.parent

W3schools Window Open

Je ne suis pas tout à fait sûr de ce que vous voulez dire dans votre question mais de ce que je comprends, vous voudrez peut-être utiliser l'attribut cible HTML:

 _blank Opens the linked document in a new window or tab _self Opens the linked document in the same frame as it was clicked (this is default) _parent Opens the linked document in the parent frame _top Opens the linked document in the full body of the window 

Framename Ouvre le document lié dans un cadre nommé

Source: http://www.w3schools.com/tags/att_a_target.asp